Correct the opengl drivers are to blame. They don't offer glsl support which is needed for decent sm2.0 (and sm3.0) support. Further the cards are not able to support this properly while it supports pixel shaders in hardware it implements vs 3.0 in software on windows. I believe the drivers have some basic ARB_fragment_program / ARB_vertex_program support but I don't know how well the driver implementation is and how it performs. I expect poor performance and a lot of bugs.