12F683 output not behaving as expected
This is a problem with input/output registers on baseline and mid-range cores. Both input and output registers of ports are read from input buffer and if you configured pin as analog input or output, digital input is disconnected and you can't read output port register. In your case, pin is configured as output and every time you try to read it to check it's value, you get zero (from input buffer).

To solve this, either configure pin as input and add button to control input signal and toggle LED on another pin or change PWM to variable and it will work.

Also, in same document there's another issue regarding IO ports and read-modify-write instruction answered here

You can read more here (Page 2, READ-MODIFY-WRITE INSTRUCTIONS ON PORT REGISTERS)