Modifying the clock rate for shiftin()

According to the times in Table 7 of the datasheet,
http://www.nxp.com/documents/data_sheet/74HC_HCT597.pdf
I would expect that part to be able to run at SPI clock speed of 8 MHz, no slowdown should be needed.
How do you have it wired up? Do you have 0.1uF/100nF caps on the Vcc pin to Gnd?
Code should be something like this, with MR/ connected to +5 and DS to GND.

digitalWrite(STCP, HIGH); // capture data at input pins
digitalWrite (STCP, LOW);
digitalWrite (PL, LOW); // move data into the output shift register
digitalWrite ((PL, HIGH);
inbyte1 = SPI.transfer(0); // clock the data into Arduino. SCK/13 to SHCP, MISO/12 to Q
inbyte2 = SPI.transfer(0); // clock the data into Arduino.