That is how the tests are normally done, but it's only done this way because most people can't pinpoint ovulation (so the test is done based on a 28 day cycle). As long as you chart and know exactly what day you ovulated, the progesterone test should be done on the 7th day past ovulation.
Day 3 will be easy to define, no matter what your cycles are like. Define day 1 as the first day of true bleeding (not spotting) and day 3 is 2 days later.
But you're right in questioning the day 21 testing. If you ovulate extremely early (say CD 10), and you tested on day 21, then you would be testing progesterone on 11dpo. At this point, progesterone could have already plummeted and you'd get a falsely low result.
However, if you cannot pinpoint the exact day of ovulation, you'll have to do day 21, as you've got no other choice really. Day 21 is better than some other arbitrary day (hence the reason they do it this way).
I hope that's helpful.