Выбираем 'have to', так как есть конкретная причина (визит к стоматологу), которая обязывает их уйти раньше. 'May' выражает возможность, но здесь есть явная необходимость.
Ответ: have to