Any COM interop experts out there?

I've been spending some time trying to get Windows Media Player to work in a remoted mode from C#. There's a C++ example in the WMP9 SDK named WMPML that does it, but it uses some special interfaces.

To get it to work, I need to register an IWMPRemoteMediaServices object with the WMP player, but despite setting it through SetSite(), my IServiceObject implementation is never called to return the type.

Anybody with some experience on the internals of AxHost and how this stuff works?