Любой элемент управления Windows Forms имеет событие Paint, вам не нужно создавать свой собственный класс.Но, конечно, вы можете, это помогает разделить код.Просто выберите базовый класс, который уже предоставляет большую часть того, что вам нужно.Установите для свойства DoubleBuffered значение true в конструкторе и переопределите OnPaint.