Still tinkering, was checking out digitalWrite and digitalWriteFast and OMG!! doing a high and then low with digital write creates a 675nS pulse, digitalWriteFast High and Low creates a 45nS pulse!!! And in some cases its 15ns!!
Having the logic sniffer really makes it easy to see what actually happens to your output signals, having several pins running an IC like the TLC5940 really makes timing important.

Code:
void loop(){
analogWrite(GSCLK, 128);
spi_send_bytes(gsData, len);
analogWrite(GSCLK, 0); // Turns off GSCLK 1uS before SPI finishes, based on test data
digitalWrite(XLAT, HIGH);
digitalWrite(XLAT, LOW);
delayMicroseconds(10);
}
void spi_send_bytes(uint8_t *data, int)
{
for (int i=0; i < len; i++)
SPI_WRITE_8(data[i]);
}