Disabling all SPI devices except the SD is required to initialize the SD. However this may not be the problem here since the SD library make SS an output and sets it high. For 328 chips SS is pin 10 so the code to disable w5100 is in SD.h. For Mega this is often the problem with initialization of the SD on the Ethernet shield.
From D:/arduino-1.0.1/libraries/SD/utility/Sd2Card.cpp at line 228.
// SS must be in output mode even it is not chip select
digitalWrite(SS_PIN, HIGH); // disable any SPI device using hardware SS pin