>>18
いや、DrawRectangle同士でも

DrawRectangle(Brushes.Black, null, new Rect(0, 0, 1, 100));
DrawRectangle(null, new Pen(Brushes.Red, 1), new Rect(0, 0, 0, 100));

こうするとそもそもxの起点位置が違うんよ
下の赤線の方が1つ左にズレて-1位置に描かれる