Probably, your problem is your unit selection:
e.Graphics.PageUnit = GraphicsUnit.Pixel;
Since the size of a pixel will be dependant on the output resolution of the device, I would expect the size to change between devices. Try using a device independant unit instead: try Point, Inch, Document or Millimeter instead - whichever you are comfortable with.