I do know about the implementation in Wine, but sadly that one is not really useful for someone wanting to add support into a cross-platform app. Wine's implementation is tightly integrated with the Windows APIs it tries to recreate, so it has things like IUnknown and other Windows idiosyncrasies that aren't suitable for deployment as a library.