Personally, when I run into hardware to DAW MIDI oddness one of the first things I do is use a MIDI monitoring application to find out exactly what a device is sending and what’s been sent to it.
In the case of a Sonar setup, that means running MidiOX. The input and output slots in a MIDI track get pointed at that, then connect MidiOX to the hardware device’s ports and start pressing keys and buttons and turning knobs to see what’s being sent where, check the channels being used are what I think they are etc.
It might be worth trying if it hasn’t already been done. Just to check that everything is configured as it’s supposed to be.
One of the things about audio applications is that no two of them have identical preferences dialogues, and sometimes one application might make assumptions which “just work” while another needs more detailed configuration.
As well as the “main” MPK ports there are a bunch of “extra” ins and outs showing in the Sonar preferences screenshot. It might be useful to check on what they do. Also MIDI clock settings if on-board sequencers or arps are involved. Some stuff simply refuses to work unless sent clock even if the functions which use it aren’t being used.
I don’t know the MPK225, and the manual isn’t very illuminating. I do know that over the years I’ve connected a pretty wide range of MIDI hardware to Sonar, including multiple controllers or MIDI-sending hardware at the same time, and never run into a problem like this that didn’t come down to something somewhere needing a setting changing. The trick is to find out which setting in what stage of the MIDI chain from controller via Windows to DAW is the culprit.