Assuming "works perfectly on XP even without hardware OpenGL" means you have a software renderer as backup, can you explain more about how you get performance out of one on modern OSes (where DOS techniques of direct framebuffer access don't apply)?
Windows XP IIRC shipped with a soft OpenGL that'd look like a hardware version. I imagine they's not doing anything special other than not having requirements that a soft renderer can't fulfill.