Тебе самая дорога в Microsoft

Там у них всегда такие неординарные решения.
Написал бы сначала процедуру, которая закрашивает прямоугольныую область по точкам с переходом от одного цвета к другому. а потом вызывал бы ее со смещением и получилось бы все как надо.