LCD refresh rate?

Are you polling the BUSY flag (or its equivalent) before sending the next command to the LCD?

To save I/O pins, most of my projects connect via a write-only '595 shift register. Since I can't read the BUSY flag, I have to add delays after each character to ensure I don't overrun the slow LCD controller.