Какой функциональности вы пытаетесь достичь? Возможно, вместо этого он должен наследовать от класса Button (при условии WinForms) и переопределять соответствующие методы. В зависимости от того, что вам нужно сделать, вы, вероятно, получите большую часть нижних уровней функциональности в кнопке бесплатно, если вы сделаете это.
Вернемся к вашему вопросу; Нет, если вам нужно рисовать вещи самостоятельно, не существует волшебного простого способа определить, куда должны идти отдельные пиксели :-) Одним из отличных помощников в этом, о котором вы должны знать, является метод Graphics.DrawString. Он позволяет измерять размеры заданной текстовой строки, когда она рисуется на элементе управления с выбранным шрифтом и размером.