There are different types of memory used by video cards; DDR is slower but cheaper, while GDR is faster, designed specifically as graphics memory and more expensive (and of course there are different speeds with each type, etc). Even with a memory intensive program, a card with 512MB of fast memory can out perform one with 1GB of slower memory.
Another factor is how much memory an application can actually take advantage of. If a game engine is using less than 512MB of video memory most of the time, having a card with 1GB of memory would not help performance very much.