Thanks for your interest...
Actually your code and my code is nearly same except : glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
But I use in my project OPENGL C# wrapper. And C# wrapper is very old :http://csgl.sourceforge.net/
Maybe this wrapper is old and it has bug. I dont know. I decided to use OPENTK SDK for c#.
if you have any advice OPENGL SDK for c# . Or which OPENGL sdk is good for CAD .