I've been using the db_mail functionality for a while now and would just add in a couple of caveats:
1) You should add in some mechanism to track emails sent (sent to, datetime stamp, etc...). SQL server does track this but I like to have a non-system method to confirm and report against when and email was generated/sent, at least from the SQL perspective. This would allow you to recover/resend without duplicating any already sent items incase there was some issue that stopped the send.
2) You have to keep an eye on the sysmail_mailitems and other sysmail tables in the msdb. The system records all emails sent and this table can grow quite quickly as time passes. You will have to devise a method for periodic backup/cleanup if your sending mass amounts of emails.
just a couple of cents...