Es liegt einfach nur daran, dass deine ganze binäre Logik verquer ist.

#define LEDOFF PORTB &= (1<<LED)
-> alle Ausgänge an PORTB auf 0, außer LED, der Ausgang behält seinen aktuellen Wert

#define LEDON PORTB |= ~(1<<LED)
-> alle Ausgänge an PORTB auf 1, außer LED, der Ausgang behält seinen aktuellen Wert