Hallo,
Hast Du externe Pullups?
Ich habe mein Programm schnell überflogen, es ist für M8, ich weiß zwar nicht welchen µC Du hast aber um den Interrupt zu aktivieren habe ich INT0 im Register GICR gesetzt, vielleicht liegt es daran.

Gruß Sebastian