Ignorant as I am of the IMAP protocol (though I'm a native speaker of SMTP), it appears that there's a better way to tell your client to fetch new mail from the server: the IDLE command.

And Michael Rothwell was nice enough to add it to Mail.app by way of this plugin. Essentially what it does on supporting mail servers is open up a second connection, select your INBOX and then just 'IDLE'. If new mail arrives in that mail box, the server will tell you about it.

Quite a bit less elaborate than my applescript version, but so much more reliable.