Do the cards have to be same model?
I answer it with an example:
You have a NVIDIA Geforce 7800GTX 256, and you want to add another card , the second card has to be 7800GTX exactly
^what he said, and a good rule of thumb is that you can't mix cores(in your case G80 and G92). So your only option for SLI right now is to get another 8800GTS 640MB, though it doesn't need to be made by the same manufacturer.
Also, if I were to buy two 8800GT should I get the 512MB or 256MB. 256 seems kinda small these days and I like to play at 1680 x 1050. It is 80$ for the difference times 2 for SLI. How can they charge 80$ for 256MB vram