You're right. Let me try again.
If you close the circuit on the Arduino it sends power to the garage door opener that has been wired to it. This opens or closes the garage door depending on if it's already open or closed. The circuit will remain closed and the garage door opener will remain on until you push the button again to open the circuit turning off the garage door opener. This will have no affect on whether or not the actual door is open until you close the circuit again. When you push the button again the process is repeated.
What I meant by counter was something like this:
Default state.
Doorstate = 0; (door closed)
Circuitstate = 0; (circuit off)
push the button.
Doorstate = 1; (door open)
Circuitstate = 1; (circuit on)
push it again.
Doorstate = 1; (door remains open)
Circuitstate = 0;(circuit off)
push it again.
Doorstate = 0; (door closes)
Circuitstate = 1; (circuit on)
push it once more.
Doorstate = 0; (door remains closed)
Circuitstate = 0; (circuit off)
Hopefully that clears everything up.