What you posted does not look bad.

So:
as usual, check for any OpenGL errors
copy/paste a GS example from the net and compare with what you have