https://bugs.winehq.org/show_bug.cgi?id=37751
--- Comment #15 from Vincent Povirk madewokherd@gmail.com --- We're returning the correct _AppDomain interface, which calls methods on the correct AppDomain object, but AppDomain.Current is the root domain during that call. The COM wrapper should presumably switch the AppDomain, or call a remoting wrapper.
It seems like this doesn't happen. I tried inserting a remoting-invoke-with-check wrapper in the cominterop wrapper, but that didn't change anything. I think fixing this is beyond me for now.