Problem with SPI communication (PIC24H)
One of the errata on that chip is: 


  
  SPI Module The SPI transmit buffer full (SPITBF) flag does not get set immediately after writing to the buffer. 
  


So perhaps try a delay (maybe 10 NOPs or something like that) before testing the SPITBF flag. There does not appear to be an official work-around.