On the surface this sounds easy, but it is more complicated because of the variety of configurations that can exist for the Pool Controller. The interface / commands exposed here match what is possible within the *Touch pool controllers. In that world, the controls for the Heaster are tied to a specific Body of water. I am not a total expert on that side - this comes from the guys running the nodejs-poolController code. But I think the basic idea is that a single heater could be used to provide heat for more than one body. So the set points in the controller are managed at the Body of Water level.
Of course this leads to the problem you re up against....I can't add a simple on/off for the Heater tot he Body object because it already has one to control the Pump for that body. Given all this, I'm afraid the custom setup is the best way to go. I am using a similar model to enable; this in SharpTiles. I tie the custom commands to a Rule which I then trigger from a tile.