I've been looking at this issue too. My understanding is the same as yours - a write operation can be performed only on a block that has been fully erased beforehand. Every SD card has a micro-controller built in. This controller takes care of all the low-level operations of the card, including wear leveling, erasing, reading and writing. So this means that the camera, or card reader, or whatever the card is plugged into, can communicate with the card on a higher level with standardized commands, and not have to deal with all the minutia.
There are high-level commands which instruct the controller to erase a block, or range of blocks, of memory, and in theory doing that would speed up subsequent writes to those blocks. That's because if you just try to write to a block and it isn't erased, then the controller has to erase it on-the-fly before performing the write, and you have to wait while it does that. (The card's controller always responds to commands with completion codes, so you would just be waiting longer for that code to come back.)
However, it's not clear just how the controller knows whether a block is erased or not. Of course it could keep track in its ram of what it has erased during the current session, but what you really need is some flag for each block that survives a power cycle and can be quickly read by the controller. You have to believe there is such a mechanism, but I can't find any confirmation of that. This is a key point, because if the controller has no quick way to determine if a block is erased, then it would have to automatically erase everying on-the-fly before writing, and erasing a card in advance would yield no benefit.
There is an SD card formatting program at sdcard.org (under "Consumers") which claims to erase a card as part of the formatting process. But it tells me my "interface device" doesn't support that operation. Also, the program has been known at times to mess up cards and leave hundreds of MB unaccessible.
On the other hand, my Canon A590IS has an option to "low-level" format a card. It's possible that's an erase operation. I just don't know.
I found the Wikipedia entries for "secure digital" and "flash memory" to be quite good.
Let me know if you find answers to this. I'd really like to know if erasing a card ahead of time might speed up the write process, and if it does, how I can do such an erase.