mIRC will stop, eventually. It may take a reasonably long time depending on how long you left the timer running but it DOES stop eventually after you stop the timer. This is simply due to lag.

You can see this is not a bug by specifying a different command inside the /timer - For example, /timer -m 0 100 echo -a example, then type /timers off and you'll see that /echo stops echoing.

Regards,