I needed a way to send an email in the future, so I came up with WP Delayed Email. Activate the plugin, and you can call wp_delayed_mail() just like you would wp_mail(), except that you pass a timestamp argument for the time you want the email to be sent.