Application.SetCompatibleTextRenderingDefault(True)
That's the troublemaker. Compatible text rendering enables the text rendering that was used in .NET 1.x, in particular using the Graphics.MeasureString() method to calculate the size of autosized controls like Label. The only reason SetCompatibleTextRenderingDefault exists is to keep text rendering consistent if you have old .NET 1.x components that still draw with Graphics instead of the .NET 2.0 TextRenderer class. A problem that existed 7 years ago when .NET 2.0 was released, surely you don't actually have that problem.
Pass False to fix your problem. That's what the WindowsFormsApplicationBase class does.