It would be much more logical for recruiting to be an option when you try to attack a NPC unit. You would have a 'Declare War', 'Cancel', and 'Recruit' buttons if you're not at war with the NPCs.
Also, recruiting should cost gold if you ask me. Or a mix of gold / items / materials. It would be cool if there were some special NPCs that you would be able to recruit but only if you bribe them to join you for some cool swag. For example a priestess that you can only recruit if you trade her a book of Arcane Lore (in addition of having the charisma requirements).
Perhaps charisma could lower these requirements or remove them altogether if you have a high enough charisma. This would make charisma more interesting than just an 'on/off' attribute for recruiting.
EDIT:
One more thing about recruiting is I don't know if there is a range check at all on recruiting. Since all you need to do is click on an unit and press the recruit button, can you have your Sovereign at one end of the map and recruit a NPC stack from the other end as long as the stack is visible? This is one of the most important reasons I want recruiting to be triggered on attack, as you should have to be adjacent to the unit you recruit if you ask me.
Also, every single champion should be able to recruit another champion. Champions have their unique Charisma rank, so when you attack a stack it should in my opinion pick the unit with the highest charisma in your army to do the recruiting check. It shouldn't only be your sovereign that can recruit. I see all kinds of opportunities with this kind of a system - you could train a diplomat of some sort. That unit has terrible attack and defense ranks and would have to be protected, but would have an extremely high charisma and as part of an army, would help out in recruiting NPCs/performing quests (among other things, of course).