The other reason for CheckBoxPair is to get a focus rectangle on the prompt.
When CheckBoxPair draws the text it handles the focus rectangle, but then it grays out the text when protected.
If you use Pair (like in your changes) then Static draws the text so it is not grayed out, but you do not get a focus rectangle.
Note: With your changes to Control.Construct, CheckBoxPair is not used any more.
If you made your changes to CheckBoxPair but did not change Control then it should work as before.