Problema en la imagen de mosaico que comienza a diferentes alturas usando TextureBrush en C #

stoy tratando de colocar una imagen en mosaico (16x16) sobre un área Rectángulo de dimensiones ancho = 1000, altura = 16 usando TextureBrush para obtener una tira como la interfaz de usuario.

 Rectangle myIconDrawingRectangle = new Rectangle(x, y, 1000, 16);
 using (TextureBrush brush = new TextureBrush(myIcon, WrapMode.Tile))
 {
    e.Graphics.FillRectangle(brush, myIconDrawingRectangle );
 }

Cuando dibujo con x = 0, el mosaico y = 0 ocurre como se esperaba a partir de (0,0).

Cuando dibujo con x = 0, y = 50 el mosaico comienza en (0,50) pero el rectángulo de pintura no comienza con el inicio de la imagen. Comienza con una parte recortada de la imagen y luego se repite.

¿Cómo resolver esto?

P.S: no quiero colocarlo en mosaico en bucle repetidamente sobre DrawImage.

Respuestas a la pregunta(3)

Su respuesta a la pregunta