https://bugs.winehq.org/show_bug.cgi?id=47165
--- Comment #31 from Hajo Krabbenhöft bugzilla+winehq.org@hajo.me --- Forcing wined3d_adapter_no3d_create causes "None of the requested D3D feature levels is supported on this GPU with the current shader backend." errors and a black screen, so apparently the new iTunes requires 3D support.
Forcing wined3d_adapter_gl_create and patching dxgi_surface_GetDC with `if (!discard) return E_INVALIDARG;` causes the GUI to display the image buttons correctly, but with no text overlay over the image buttons. Patching dxgi_surface_GetDC with *hdc=0; at the end produces the same effect.
Patching dxgi_surface_GetDC with `SelectObject(*hdc, CreateCompatibleBitmap(*hdc, 4,4));` also produces mostly correct image buttons with no text overlay but with a black 4x4 pixel rectangle on each button. This suggests to me that the iTunes display problem is caused by the bitmap that is selected into the HDC that dxgi_surface_GetDC returns. Apparently, iTunes is expecting that bitmap to contain both the background and the text. But in Wine, the bitmap contains only the text but no background. That's why when the actual bitmap is used, the GUI will be all black but with text visible. And when I replace the bitmap, I get no text but I can see the button backgrounds instead.