Simple AVR LED blink in assembly - why does this code not work?
brge is a signed greater-than-or-equal-to comparison. The 8-bit literal 128 is -128 in two's complement, which is the lowest possible value, so TCNT will always be more than it and the LED will remain off. Try using brsh instead if you want to use unsigned values.

Incidentally, the literal 255 is -1 in two's complement which is why your code works correctly when you use it instead.