I've been doing this manually for a while and it works surprisingly well even without the initial email. I usually start with a prompt like "Write an email apologizing for not being able to make it to a meeting due to a prior engagement". You can then ask the model to edit it by adding details, making it shorter or less professional and even translate it to another language.