The only possible insight I have at the moment is that some of the wine .dll files may be different than the native windows dlls. I downloaded what I think was a native windows version of icuuc.dll to solve a compatibility issue with opentrack running in proton, and the .dll ended up being different than the version that wine distributes, and crashed when I tried it.
You said you pulled the d3d compiler from a Windows install ... Maybe look at messing with protontricks or pulling dlls from a default wine prefix. There are a lot of convenience functions in protontricks for loading windows components and dlls. I don't know if you've tried that or not yet.
Also, have you tried to launch the game with wine instead of proton? Sometimes that gives different outcomes which can be insightful.
I am interested in getting sf2 running on my system sometime but I don't get have a copy and the website is down right now... I will follow this with interest and maybe join you in this pursuit if I ever snag a copy.