Moissanite is the way to go. I got married last fall and didn't even give her the option of a diamond on principle. Nobody asks if it's real, they just think you're loaded because you're fiance is wearing a $800 rock that they think cost 20g. My friend who just got engaged had a completely custom setting designed + moissanite -- more thoughtful and less expensive than crap from your local jeweler and nobody can tell the difference. The hardest thing is getting over the massive psychological pressure that people will think you're cheap. Know what I told myself? Man the fuck up and stop being society's little bitch. Besides, two days after the wedding neither of you will ever think about it again.
edit: un-diamonds are also a great litmus test. if your girlfriend learns the real story of diamonds and still insists on having one you're probably in for much bigger problems than just the ring.
My wife wanted a diamond ever since we got hitched (we were far too poor at the time to even consider it). So now, years later, I told her "let's get you that ring you wanted". We went around for a year or so, to local loose diamond sellers, and then she saw "Blood Diamond" and that put a stop to that.
$60 later she's happy as a peach with a CZ ring she enjoys wearing. And on balance she says that she's even happier with it because she doesn't have to worry about it at all. If she loses it, it's not like losing a used car.
I'm fortunate that my wife is the same way. She told me she didn't want a diamond for engagement. I wrote an iPhone app for her instead. ;) We've been happily married for six months now!
edit: un-diamonds are also a great litmus test. if your girlfriend learns the real story of diamonds and still insists on having one you're probably in for much bigger problems than just the ring.