My first impression is that the problem is banding caused by insuficient color precision ie you are using a 16bpp mode.
To check run
xdpyinfo your should be bombarded with information most of which you can ignore. You should see a bunch of lines that say:
depth: 24 planes
depth: 16 planes
or if you are unlecky enough
depth: 15 planes
The number of planes is the number of bits used for actual color infomation per pixel (even when running at "32bits per pixel" you only get 24bpp of actual color information ... the other 8 are used for things like alpha or stencil). If the number you see is less than 24 then do the following:
Edit your /etc/X11/XF86Config file. There probably is a line that says something like:
and another close by that says
Change both of the 16 to 24 and then restart your X server.