It depends what you mean by function together.
If you have both cable and D* service, the S3 can receive the cable and the D* box can receive the D* signals.
Neither box can receive the signals for the other service.
I currently have both cable and D* service. I use a S3 for the cable and both a HR10 and HR20 for D*.
The only changes I needed to do for this to work was to change the remote address code for the S3 to 1 and the HR10 to 2. Otherwise, the remote would make changes to both boxes whenever I tried to use it.