I'm stuck with this simple PIC16F program. Help please!
The difference between your first (non-working) and your second (working) code snippets is that the first relies on the existing value of RB0.  If the external circuit is holding RB0 a particular way, even when the PIC is trying to drive it the other way, then the first won't work.

This could be the case, for example, if you don't have the LED connected correctly with the proper minimum resistance in series, for example.