The solution in minimal words, pasted from Uno, official Ethernet shield and RTC1306 using SPI not working togheter - Networking, Protocols, and Devices - Arduino Forum
// change to mode 1 for RTC
SPI.setDataMode(SPI_MODE1);
// do your RTC SPI stuff
// then change back to mode 0 for w5100 and SD
SPI.setDataMode(SPI_MODE0)
SurferTim - You are the man!
It is bizarre though that the programmers need to be concerned with such incantations, Shouldn't this be part of the libraries/device drivers?