Sería más sencillo si no dejaras al usuario demasiada libertad para elegir las horas.
O sea, lo que quiero decir es que por ejemplo sólo tenga la opción de enviarlo:
-A las 8:00 am
-A la 2:00 pm
-A las 8:00 pm.
Tú debes tener un script php que envíe todos los mails pendientes para determinada hora.
Simplemente en tu "programador de tareas" programas que se abra el navegador en tu script que tienes en el servidor todos los días a las 8am, 2pm y 8pm.
Espero que se entienda
saludos