This can cause a lot of headaches sometimes due to read-modify-write;

HIGH PORTE.1 ' reads whole port, flips this bit, writes whole port
LOW PORTE.0 ' same, but if RE1 isn't high yet, RE1 is read & writen back as 0

Try just toggling the LED on RE1 to verify that you're entering the interrupt routine.

Another potential show-stopper is directing RESUME to Done, which halts everything.

Try something like this;
Code:
INITIALIZE:  ' Initialize Routine
    IOCB = %00000001   ' Enable interrupt-on-change on RB0
    INTCON = %10001000 ' Global & interrupt-on-change on Port b enabled
'************************************************* 
On Interrupt goto Halt ' on interrupt go to the Halt routine

MAIN:
    HIGH PORTE.0
    PAUSE 500
    LOW PORTE.0
    PAUSE 500
    GOTO MAIN
'************************************************* 
    DISABLE       ' do NOT place interrupt checking code below
Halt:             ' Halt Routine
    WHILE PORTB.0=0 ' wait for button release & end mismatch condition on portb 
    WEND          
    TOGGLE PORTE.1
    INTCON.0 = 0  ' Clear the interrupt-on-change flag
    RESUME        ' Go to Main routine
    ENABLE        ' Enable all active interrupts