Dabei ist es uninteressant was DrawEllipseFromCenter macht.
Ja eben nicht.
Wenn ich eine Linie zeichne und anschließend einen Ball, auf dem die Linie zur hälft liegt (Normaler weise dahinter)
Dann sollte die Linie eigentlich nicht sichtbar sein Oder?
Denn schließlich zeichne ich die Linie zuerst.
Den Ball zeichnest Du in DrawEllipseFromCenter und daher könnte dort der Fehler liegen.
Programmieren ist die Kunst aus Nullen und Einsen etwas sinnvollen zu gestalten.
Der bessere Künstler ist allerdings der Anwender, denn dieser findet Fehler, welche sich der Programmierer nicht vorstellen konnte.