After starting your transmission by writing to SPI1BUF, I think you will need to wait until the transmission is complete before you then start checking if the receive is complete.