Ok, I looked at your programs again and I am doing the same thing to get the same results. >
I tried extra reads, swapping logic on Chip Select and the only thing that caused more consistent results was slowing the clock rate down. I don't have an oscilliscope (yet) but I wonder if the clock still runs when you aren't transmitting or have the SS_PIN selected.
One thing I did do was tried hooking both 3.3 and 5v up on their respective pins. I tried the 3.3v first and it kept shutting down the Duemilnove (to much draw?). It wasn't till after I tried the 5v that I noticed the note about not using both at the same time. I hope I didn't blow some circuit on the SS5500. I haven't yet put a continuity tester on my wiring to see if I accidently put a short in to the 3.3v while wiring up all the GND pins.
I'm going to try and switch to the Vout method just to get going on the project. I may come back and revisit the UART and SPI methods later. I guess my first attempt again with SPI should include a more powerfull 3.3v supply.
I really want to do SPI because my final project calls for this and an SPI display. Theoretically you can use SPI bus like IC2 with a separate pin for each CS. Each device is supposed to pass on the commands if CS isn't selected . . . like it is doing right now.