For anyone who runs into this issue with using an SDcard and anything else on the SPI bus.
Do the following:
Mount the SD card first before any other device on the SPI bus. So run your SD init first.
Before running init on the ethernet:
pinMode(10, OUTPUT);
pinMode(4, OUTPUT);
digitalWrite(10, HIGH); // disable both devices on the SPI bus.
digitalWrite(4, HIGH);
And finally, pinMode(53, OUTPUT); as well if you are running on a mega 2560.
Hope this helps.