Here a summary of my experience:
If you ask for 3 provinces, you must have at least 6 stars more than you have gravestones (just to state the obvious again).
The more stars you leave unclaimed by any demand, the higher your probability of acceptance is. The probability for a peace offer with 'no stars left' is actually quite low if you are the one asking for peace. But you will get offers of three provinces from your enemy at least once.
The best, but hardest way is to conquer all cities of a country (tradeposts don't count). This gives you 8 stars and a decent probability of acceptance if you ask for peace and the provinces you want. You will never get the capital province with anything but an annexation, or not at all if your enemy is a playable country.
Of course, if you conquer all provinces and your enemy is a minor, it's usually better to go for a complete annexation if you're after territory.
If you cannot conquer all cities, to get three provinces of first or second priority, conquer five provinces with cities of 700+ size and the capital. Then wait until the peace offers come. Think hard before rejecting anything. Peace offers will get worse if you do nothing between them.
Avoid conquering small cities (<700) because these will always be included in any peace offer by the enemy. Immediately burn any trade posts you get (of course, unless you actually want them) because as soon as you control one, the enemy will make a peace offer including this trade post.
If you want a certain valuable province rather than random territory (for example, a COT), chances are than the enemy will never offer it in a peace treaty, and never accept a peace including it unless you leave stars unclaimed. In these cases, from any point of view, it's more feasible to be content with two provinces.
Other factors influence the probability of acceptance as well: if your diplomacy value is rather high despite the war, the probability seems to be a bit higher. A separate peace is always harder to get than a peace with an alliance leader - the difference may be equal to a star or two.