SD cards are made to be hot swapped. The VDD/GND pins stick out just a little further, so they always make contact first:

Although I'm not sure about using two attached to the same bus. I see one possibility for issue. Upon insertion, the SD pin connected to SPI MISO might become connected before CS does, or some other transient condition could exist where both SD cards are simultaneously trying to control MISO, causing a glitch in any attempt to read data.
This could be addressed in software by:
1) Reading multiple times, and accepting the data only when it reads 2-3 times identically. You're primarily doing writes, so that wouldn't be too big of a burden.
2) Reading with a checksum.
3) Ensuring no reads occur during the swap.
Or in hardware by using two separate MISO lines. On a PIC that allows remapping MISO to various pins via its PPS function, this would be easy. Not sure how AVR/ARM/others handle it. If the platform doesn't allow it, it's possible you could bitbang SPI transfers in software to allow arbitrary pins - maybe even just for reads, with writes being done with the SPI peripheral.