I agree that factions are a huge improvement, and lead to much more sensible AI behavior. I think they definitely could be improved, somewhat along the lines of CK2+.
Essentially, the question people should be asking is, What’s in it for me? Imagine:
The Duke of Burgundy wants to become the King of France, and goes looking for support. His son, the Count of Charolais, is happy to put himself next in line. His brother the Duke of Flanders is also willing to help out his dynasty, even though he’s not a vassal of the current King of France. But anyone else will need a reason to support him. If they like him a lot better than the current king, they might accept an office, an honorary title, or just some money from what’s left of his treasury. But perhaps there’s a baron who wants to be count, a duke who wants control over all his de jure lands, or a count who wants a piece of the royal demense. Maybe one Duke will agree in exchange for more privileges (lower realm authority), or for lower levies, or in exchange for elective succession — but, would your son still support the plan then? Maybe the Duke of Brittany would agree to help you on condition that you release him from vassalage. So, you’d have to decide how much you’re willing to weaken the realm you’re trying to usurp. And, if this happened several times in a row, you might end up with a very weak realm indeed.
The fact that the different members of the faction have different goals would also give the defending king a chance to make a separate peace with some of his attackers. Brittany might surrender while Burgundy fights on, and that wargoal would disappear. Or perhaps the King does well enough that he could give Aquitaine the change in laws it wanted in return for switching sides.