Hola, pues déjame contarte que también me cansé de intentar que funcionara en Proteus. Todo parece estar bien, pero nada. Debe ser porque yo no se mucho de ese simulador, porque en 'la vida real' me funciona perfecto con un PIC18F4550. Tal vez alguien más te pueda ayudar con la simulación.
Saludos!
Edito: Si de todos modos quieres seguir intentando, recuerda que al usar los pines del Puerto B para manejar el LCD no debes activar las pullups de este puerto y además debes usar este fuse:
#FUSES NOPBADEN //PORTB pins are configured as digital I/O on RESET