Drawing a gradfill rectangle is a matter of telling OpenGL what color goes on each corner. It is up to OpenGL to make the color ramp smoothly (no banding). Rewriting the graphics primatives isn't really an option. Some things are just to small on the reward for the effort expended scale.