That's a good question: I hope some others will share their experiences.
For my part: I have been messing around with CPC/EPC protocols a lot and haven't really been able to reproduce much of the literature. For instance I've found that KDR only 'works' when you don't look at viability. As soon as you add a viability stain (which many studies curiously omit) the CD34+/KDR+ population disappears. Also with KDR you don't really see a saturation point in antibody dilutions, the more anti-KDR you add, the more pos cells you see. This is also reported in a recent paper by the Yoder group (I think by Myka Estes as first author). There's a paper by de Boer et al in ATVB that is also interesting in this respect.
Concerning CD31, you do see a homogenously positive population, but the signal is fairly low, so I don't think the cells you register are really expressing it a lot. I've done a spike-in with ECFCs once and they are 3 logs higher in CD31 than what you pick up in blood (in this case the CD34+/CD31"+" cells). I think what you see is mostly cells that are in the process of eating a damaged platelet. The true CD31+ cells are exceedingly rare, same goes for CD146+ cells.
CD34, CD133 and CD45 work like a charm however: they have clearly positive populations, within subject variance lies pretty much at the theoretical minimum (poisson counts), and they behave exactly like they're supposed to (lower in DM, mobilized by canonical stimuli etc.)
My personal preference therefore goes to CPCs for flow cytometry, regarding circulating EPCs, I think anything other than ECFC are mostly artifacts and ECFCs are too rare to measure by FCM.