Malcolm,

I've got it running here on a 16F676. But...

You have a POT input on AN3, which is also the OSC2 for the crystal.

If I comment out the ADCIN 3, DUTYVAR4 then it seems to run fine.
But with that statement in there it goes wacko.
<br>
Added: ANSEL needs to be changed too, but I'll wait to see where you move the AN3 to.