What part of Windows would need to be made open in order to get a 100% Windows binary compatibility on Linux?
For example, DX11 being opened up doesn't matter because it relies on the Windows driver model while Wine is translating HLSL and D3D calls to OpenGL, or Gallium-Nine is translating them to TGSI. Opening up most system libraries doesn't work, because they are all using Windows kernel primitives the Linux kernel won't have.
The complexity of Wine is more that Windows is a 30 year old maze of complexity with millions of independent APIs and callbacks implemented over the years without rhyme or reason, and a Windows exe can call any of them any time and get anything back because the APIs are anything but bugfree. You need to translate Windows soup to Posix soup and somehow get all the expected behavior the running program needs, and then on the backend they are supporting pretty much every non-Windows OS so they have to fight with all their targets quirks.