The awkwardness of Shuffle On/Off has bothered me for quite a while as well.
Now, however, I have discovered a very elegant (in my view) workaround: @DrCWO has programmed a Surface Dial as a remote control and with this you can simply toggle Shuffle as well. I have been using it for a few days now and it works perfectly.
Apart from that it controls volume etc. and it can very well serve as a main interface to Roon.