This is because the Text is being set by the designer for the Label control. Label has a LabelDesigner which inherits from ControlDesigner. ControlDesigner.InitializeNewComponent sets the Text property to the Name value if the Component (your derived label) has a Text property of type string, which is not ReadOnly and IsBrowsable.
So you can set the Text property to ReadOnly or to not be Browsable.
Alternatively you can write your own designer which overrides InitializeNewComponent. In here you would first call base.InitializeNewComponent and then set the Text property to whatever you want.
Unfortunately LabelDesigner is not public, so you would have to inherit from ControlDesigner meaning you will miss out on the SnapLines and SelectionRules that LabelDesigner sets.
Hope that helps,
Martin