Wow!! no sólo has tomado la idea sino que además lo has mejorado.
Sólo te falta el "override" en CreateParams, el compilador te avisará de todas formas
.
En principio no veo nada más, bueno sí, para ser un poco tikis-mikis
, ¿no tiene la opción Grayed?? (el estado intermedio entre check y uncheck).
Saludos