For additional qmail anti spam resources check out:
I've been running qpsmtpd (get top of tree CVS from http://develooper.com/code/qpsmtpd/) as a drop-in replacement to smtpd for some time now. It has a number of plugins for black lists and people who abuse [E]SMTP, my favorite is the spamassassin plugin for incoming system-wide spam handling (I don't use this plugin internally for outgoing mail to improve performance)
I agree with your approach of stopping spam at the SMTP level. It has made a huge improvement in the amount of spam that my domain receives since qpsmtpd returns a "552 spam score exceeded threshold message" which is about the only hope of getting off of the spam lists.
Also check out the SPAMCONTROL patch to smtpd, magic-smtpd, and http://www.amavis.org.