Great article! I as well run vpopmail and courier-imap and run into the same open-smtp problem. A while back I came across an article which told me to run a older version of courier which was right before they introduced the auth daemon. So does your code work with the new versions of courier-imap and update the open-smtp file correctly?
$ dpkg -l '*courier*' '*vpop*' | grep ^ii | cut -b-44
ii courier-authdaemon 0.58-5
ii courier-authlib 0.58-5
ii courier-authlib-dev 0.58-5
ii courier-authlib-pipe 0.58-4+etch3
ii courier-authlib-userdb 0.58-5
ii courier-authlib-vchkpw 0.58-4
ii courier-base 0.53.3-5
ii courier-imap 4.1.1.20060828-5
ii courier-imap-ssl 4.1.1.20060828-5
ii courier-maildrop 0.53.3-5
ii courier-ssl 0.53.3-5
ii libvpopmail-freecdb 5.4.4-1
ii libvpopmail1 5.4.4-1
ii vpopmail-bin 5.4.4-1
ii vpopmail-doc 5.4.4-1