Most styles can be drawn via wantsUpdateLayer. It's faster and uses less memory. The control should still implement drawRect: to allow drawing when necessary, e.g. for printing.