А почему такое удивление об отсутствии WM_MEASUREITEM для кнопок? Название этого сообщения все объясняет — у кнопок нет вложенных айтемов, как например, у комбо-бокса или списка. Зря конечно, что микрософт назвала сообщение для отрисовки — WM_DRAWITEM, уж лучше WM_DRAWBUTTON, было бы меньше путанницы.