Thanks for all the suggestions, Brad.
In mainstage I have Send Program Change selected, and Send Bank Select on the midi out tab.
One thing I noice is that the program change happens whether or not Bank select is 112, so that either seems not to be sent or not received. The mac I'm running Mainstage on has no other midi apps installed so I'd have to do some work to snoop on the messages, maybe install a midi python lib and send to the IAC midi channel.
I did just notice in Mainstage there are two places to set the Bank Select / PC ; under patch settings / attributes, and on the external instrument channel strip. I just tried the patch settings checkboxes which were unchecked, this seems not to have any effect immediatley when dragging the program change slider, or if I select another patch and return to the one with the channel strip sending.