Something I have found just quickly:
I have a long luteal phase of 17-19 days. I know this because of temping: I usually have 17 or 18 days of elevated temps before they fall and AF starts.
In a woman's menstrual cycle, it is the follicular phase that is variable, while the luteal phase is fixed from cycle to cycle. So, first of all, you need to make sure how long your LP is and temping is a very good way to do this. It is more likely that your O day is varying from cycle to cycle rather than your LP.
A long luteal phase is not a problem and doesn't contribute to IF. It simply means it takes a bit longer for your prog level to crash and bring on AF. Prog is necessary to maintain a pg, so I say we ladies with long luteal phases give any embies the best possible chance to implant.
After having confirmed O, if you end up going 3 weeks or more without AF this does not mean you have a long LP. More likely, it means you did not produce enough prog during your LP (it is the crash of prog levels that brings on AF) so its important to have a 7dpo prog level.
Your doctor cannot tell from an u/s that you will be Oing "right away," so I'm not sure why he would say that unless he meant within the next few days. All he can see is a follicle (before O) or a collapsed follicle or no follicle at all (after O). It is rare that he would actually catch a follicle rupturing before his eyes, in which case you would be Oing right then and there, not about to. Its kind of like looking at an X-ray and telling someone they are about to break their arm. Impossible! Its either broken or its not broken.
Also, have you had your LH levels checked (baseline and leading up to O)? Women with elevated LH (like myself) will have difficulty using OPK's as they can be inaccurate showing days and days of +++'s followed by --'s and then more +++'s, frustrating to say the least! Elevated LH is a common symptom of PCOS, but you don't have to be diagnosed with PCOS to have elevated LH.
Is there a reason for jumping right to IVF after Clomid, or would you consider trying injectables first?