You are confusing the issuance of Licenses with application load balancing. One has abssolutely nothing to do with the other.
I recommend you start here:
http://support.citrix.com/servlet/KbServlet/download/10201-102-14980/architecture_an_overview.pdfYou can point each server at a different license server in the mgmt console. BUT - when you do that, the servers will not share licenses. So if UserA runs an app from ServerA pointing to LicA, that will consume one license. If UserA then runs an app from ServerB pointing to LicB, then the user has now consumed TWO licenses. One from LicA and one from LicB.
If UserA runs two apps both serviced by ServerA and ServerA is pointed to LicA, then only one license is consumed by UserA.
To do what you want will require some upfront work by you. You could group your users into two security groups, say called LicGrpA and LicGrpB. Publish all applications twice. One will run from ServerA that is pointed to LicA and only users from LicGrpA have access to that app. The other will run from ServerB pointed to LicB and only users in LicGrpB will have access to that app.
Make any sense?
What you are seeing is the result of the built-in Citrix application load balancing. That looks at each published application and the servers allowed to serve that app. When UserA clicks on the icon, the XML Broker looks for the Least Busy Server for that app and sends the user to that server. So if you have otepad Published on both ServerA and ServerB and each server pointing to a different License Server, the XL Broker doesn't look at licenses. It onnly looks at the load on each server. The server with the lower load number is where the user is sent to.
Make sense?
Another point of confusion is if you have multiple license editions on one License Server, ALL the license are demote to the lowest edition level. So if you have 50 licenses each for Advanced, Enterprise and Platinum on one License Server, then all 150 licenses are given the features for the Advanced Edition.