Another FReeper suggested Sams Club or Costco...excellent! BUT...make sure you study up on gem terminology (carat, cut, clarity, and how they rate the color of a diamond). Make sure whereever you buy you get a certificate of authenticity (or some from of validation of the stone's quality). Take note of what she wears (white or yellow colored jewelry)...does she like antiques or is she more contemporary? Really look at the size of her hands...rounds look good most as do ovals; marquise or pear shaped look better on longer, thinner fingers; princess (square cuts) are usually rarer in reasonably sized stones (around a carat or less). Make sure you see the diamond using an eye peice (look for carbon deposits call inclusions...they bring the value of the stone down). And...if possible, get the engagement ring with the matching wedding band...just because sometimes it is impossible to find a band that matches the engagement ring (after the fact).
Lastly, stay away (if your budget permits) from cubic zirconia. CZs are great, but an engagement (and or wedding ring) is worn daily and exposed to most of what your bride to be hands get into. The man made stones just don't stand up to the test of time like the real thing.
While you are right on most of your advice, I disagree on the CZ. I have a diamonique epiphany band, platinum over silver and I am a dog groomer. My hands are in harsh chemicals for a portion of each day and my ring, after a year or so is still brilliant and sparkling. I've told my boyfriend if we ever get married, spend the money on the metal, not the stone. Metal can be hocked. Most places wont give you much for the stone. Am I a cynic about marriage? Yepper!