Hi Azslow3 - thanks for responding. Just after I posted to c5 I had another look around your site and found that thread and realised that he was actually referring to the modified Mackie dll.
I'm slowly making some progress through trial and error and getting some interesting results. Now that I know how to check the connection status I've tried all the default Surface plug-ins that are available in Sonar. Despite Yamaha's assertion regarding Mackie compatibility in the MOXF manual, I've found that the 3 Mackie Options in Sonar are the only ones that DON'T connect. They just sit there saying "Connecting..." forever. The Sonar ACT, Sonar Generic Surface, and a couple of other "VS something" options all actually connect.
I installed the modified Mackie DLL from your site which connected as soon as I used the option to disable handshaking, and your AZ Controller connects fine as well. I actually used the last midi message monitor on it to test every control on the MOXF to see which ones output a signal when operated in DAW Remote mode. With the MOXF set to use Sonar as the remote DAW I get messages from the six transport controls, plus two banks of six function buttons. If I select Cubase as the remote DAW then I get additional messages from the eight rotary knobs, each of which can be switched between 3 parameters, so 24 more codes available in total.
Anyway, now I just need to pick the most appropriate surface plug-in, as they seem to have subtle differences and configure it to learn the commands I want to use.
Thanks again for your help, and for making such an awesome product available to everyone.