I have both Kontakt and, much more recently, UVI. I don't use either one in multi-timbral applications, so I'm not an expert. I've seen complaints about how complicated it is with Kontakt, but I've never tried it myself.
However, out of curiosity, I did play around with the multi-timbral functions in UVI just now, and was able to get everything working pretty quickly, with a little help from the UVI and Sonar manuals.
As far as Sonar is concerned, when inserting an instance of UVI where you want multiple audio outputs, make sure to check one of the "All Synth Audio Outputs" boxes.
As far as UVI is concerned, click the three horizontal bar icon to select the multi screen, then click the small gear icon towards the upper right to toggle to the expert mode, and you'll see a bunch of parameters for multi-timbral use, including the choice of output, key range, velocity range and keyswitch.
Also, the reference to 4 voices per instance in a previous post is actually just the default setting. Using the + and - icons towards the upper left, you can add and subtract literally as many parts (voices) as you want per instance, and any part can be assigned to any midi channel, within the one midi device determined in the Sonar midi track input. I added over 100 parts to a single instance, and did not hit any limit programmed into UVI. Obviously, with this many parts and only 16 midi channels, there would be multiple parts assigned to the same channel, but that is where you would use the multi-timbral parameters to determine the separation and/or overlap you desire.
To use multiple midi devices, you'd have to insert at least one separate instance of UVI for each device, and in the corresponding Sonar midi track, select the appropriate midi device for the input and the appropriate instance of UVI for the output.
Again, I'm not an expert, but it looks to me like it can rather easily do just about everything a person might need.