I don't know whether HD44780 LCD is correctly initialized in Proteus
To reset or init the HD44780 I used several millisecond long reset commands in a row before writing any display characters. I had to create 10, 20 and 50 millisecond long delays. Yes this is an ancient IC that is very slow to init. It was created at a time when LCD displays were very slow to update.

EDIT: After some research there does not appear to be a more advanced version of the HD44780 LDC driver on the market, but aside from a slow init cycle normal character updates are fast enough to appear instantaneous. It is still in wide use in many countries.