OK, I've got this one completely solved now. Here's the solution:
1) Create a new script variable called "CSQ_Priority". Type = Int, Value = 1, check the Parameter box (so you can change this value from the application page).
Note: Priority 1 is the default value for ALL CSQ's unless you change it manually. Possible values are 1-9. The higher the value, the higher the priority.
2) Add a new "Set Priority" step. Place this step at the very top of the script. In mine it is the 3rd step just after Start and Accept Triggering Contact. Operation = Assign. Assign Priority = CSQ_Priority (your priority variable).
3) Assign the new script to an application. Be sure to put a value higher than 1 in your CSQ_Priority field.
This is the ONLY method I have found that will prioritize calls to one CSQ over another when agents are common to 2 or more CSQ's. All of the weights and skill priorities seem to apply only WITHIN a single CSQ (If anyone has a different experience with this, please tell us the details).
Hope this helps guys! This technique has revolutionized call handling for us. We can now prioritize calls for "important" customers (for whom there are dedicated CSQ's) over our day-to-day calls in order to meet our SLA's with them...
InterfaceDoc