There's another thing that could be the issue.
Although MIDI-compatible keyboards are designed to respond to incoming MIDI messages, they are often designed such that incoming patch changes don't change the sound you're playing with-- i.e., they change the sound of incoming Note On messages, but not the sound of notes being played on the keyboard!
Modern multi-timbral keyboards usually have a number of "parts" they can play-- e.g., the Main/Right1 part, the Dual/Right2 part, the Split/Left part, a number of parts for the Accompaniment, a part for each of the 16 MIDI channels, etc. In normal operations these are kept separate from each other, which lets the keyboard play an incoming MIDI song on 16 channels while also allowing you to play the keyboard at the same time without having the sounds of the Right1/Right2/Left voices change unexpectedly while you're playing.
Some keyboards have menu settings that let you control how they should respond to incoming MIDI messages-- e.g., you can specify that you want Channel 1 of a particular MIDI In port (if there are more than one) to affect the Main/Right1 part. You might even be able to specify which types of incoming MIDI messages you want the Main/Right1 part to respond to-- e.g., Bank and Program changes, but not Note or SysEx events.
You should check the documentation for your keyboard to see if it has any such menu settings. Not all keyboards do; some have much simpler MIDI-related settings which-- unfortunately-- do not include the ability to assign a particular MIDI channel to a particular keyboard part. If you can't find any mention of such settings, then they probably aren't available on your keyboard.
If that's the case, there may still be a way to get the keyboard to do what you want. Basically, if you turn off the keyboard's Local Control setting, whatever you play on the keyboard will not generate any sounds-- i.e., the Right1/Right2/Left parts will be silent. But you can send the keyboard's outgoing MIDI messages to a device and then bounce them back to the keyboard as incoming MIDI messages. If you're also sending Bank and Program changes which are being merged with the keyboard's bounced MIDI messages, the result will be that when you play the keyboard you'll get Channel 1 (or whatever) instead of the Main/Right1 part (or whatever), and the patch changes will work as expected.
Note that I mentioned sending the keyboard's outgoing MIDI messages to a device. The setup would depend on whether your keyboard has MIDI ports or only a USB-MIDI port.
If it has MIDI ports, you can use a MIDI merge box-- keyboard's MIDI Out to merge box's MIDI In1, Set List Maker's MIDI Out to merge box's MIDI In2, and merge box's MIDI Out to keyboard's MIDI In.
If it has only a USB-MIDI port, you'll have to configure whatever device you're connecting to so that any MIDI messages coming from the keyboard are bounced back to the keyboard.
There are standalone devices that can act as a USB host-- e.g., iConnect has a few MIDI interfaces that can act as a standalone USB host (but not all of them can, so check first), and Kenton also makes a USB MIDI host.
However, Set List Maker is an app for iOS and Android, so I assume you've got a tablet connected, in which case you should be able to find an app that can route your keyboard's outgoing MIDI (or incoming for the tablet) back to the keyboard, and the Note events from the keyboard should get merged with the Bank/Program changes from Set List Maker.