Hi Dege! Is nice to see some light about this topic. Once more time, you are the best fixing what original devs screwed decades ago.
I tested your patched executable in my XL installation, and it worked flawlessly. It can even be NoCD patched using the patches released back then.
Regarding the region of the executables, you can tell that you EXE is from the american XL version by searching the string "xllogo.ppm" inside, in the european 2097 version this file is named "2097logo.ppm".
Both executables are the same size (769024 bytes), but a simple HEX compare reveals hundreds of thousands of differences. Despite that, I succeded at applying the same patch by searching for the same HEX patterns, they are almost the same but at different addresses (what leads me to think that both executables are indeed the same, but with different offsets). Anyway, I didn't dissassemble or debug anything, so I can't be 100% sure if it is correct, but at least it work. You can take a look into it if you want.
By using the FPS limit option present in the latests versions of dgVoodoo, at 30 fps, the speed problem is completely gone. The NoCD patched executables can be combined with a winmm wrapper for playing with music (I use dxwnd winmm.dll ogg wrapper). In my opinion, this is the definitive setup.
I post a ZIP file containing both original exes from XL and 2097 versions, their corresponding dgVoodoo fixed versions (the 2097 one is not 100% sure, let's wait for Dege opinion), an their corresponding NoCD patched versions. Hopes this helps someone.
Regards!