https://bugs.winehq.org/show_bug.cgi?id=37251
--- Comment #7 from Vincent Povirk madewokherd@gmail.com --- I looked at this for another bug, and the issue I'm running into is that the managed CreateDomain method http://msdn.microsoft.com/en-us/library/aehss7y0%28v=vs.110%29.aspx actually returns a transparent proxy. A COM-callable wrapper (from Marshal.GetIUnknownForObject) for the transparent proxy doesn't support the COM interfaces it needs to.
I think I need to use RealProxy.GetCOMIUnknown to get the COM wrapper from the newly-created domain, but that method is currently unimplemented in Mono.
If I could get the MonoDomain* for the returned domain, I could also convert that to a usable COM object, but I wasn't able to find a way to get it in the embedding api.