@Jimi pointed out the problem, using this.Left, etc. instead of this.ClientRectangle.
this.Left
this.ClientRectangle
H/T to @Jerermy Richards for the suggestion to look into WPF going forward.