MCUCR.0 und
MCUCR.1
sind für den Int0 zuständig
0 0 Immer (und dauernd) bei Low
0 1 bei change
1 0 falling
1 1 rising

also
MCUCR.0 = 1
MCUCR.1 = 0
wäre "on change"

Wie gesagt, es scheint, als wären diese Bits bei dir beide auf "0", da er ja bei Pin auf GND dauernd auslöst.

Du kannst das aber auch im Simulator überprüfen, was Sache ist, nicht, daß du den falschen Baum anbellst.

Aber sonst scheint mir dein Programm unverdächtig. Ich würd's halt überprüfen.