Das hier
>         ldi     count, 3        ; CS00 setzen: Teiler 3 (Startwert von count)
>        out     TCCR0, count
macht aber nicht, was du denkst bzw. was du dir davon erhoffst.
Das ist kein Teiler 3.
Da werden die Bits 0 und 1 im TCCR0 gesetzt. Die Namen der Bits sind 
CS01 und CS00. Das ist ein Vorteiler von 64.
Man kann natürlich den Vorteiler eines Timers im laufenden Betrieb 
verändern. Ob du das willst, ist allerdings eine andere Sache. Denn: so 
viele Vorteiler gibt es nicht und die sind dann auch noch recht grob 
abgestuft. Es gibt die Vorteiler: 1, 8, 64, 256 und 1024. Das wars dann 
schon, dann ist Ende der Fahnenstange. Mit jeder Stufe wird dein Blinken 
also 8 mal langsamer. Die Sonderfälle 0 und externer Takt mal aussen vor 
gelassen.
Guter Rat:
Studier das AVR-Tutorial. Da scheint mir mit deinem Verständnis von 
Timern einiges im argen zu liegen.
Tasten am externen Interrupt: kann man machen, muss man nicht machen. 
Wenn man es aber macht, dann muss man den Interrupt auch freigeben.
Und ja, man kann das im Simulator auch simulieren. Nur weil ein externer 
Interrupt an einem Pin freigegeben wurde, bedeutet das nicht, dass der 
Simulator das Setzen bzw. Rücksetzen eines Pins im I/O View verhindern 
würde. Klickst du dort mit der Maus den zugehörigen Pin an und setze den 
Pin auf 1 oder 0, dann wird selbstverständlich der zugehörige Interrupt 
im Simulator je nach Konfiguration des Interrupts auch ausgelöst und die 
Simulation verzweigt in den Interrupt Vektor. Ein dort platzierter 
Haltepunkt spricht dann an.