La posible solución ¿a que?...
En principio tomas los valores de los cuadros de texto y se los asignas a variables de tipo DATE lo cual es un método correcto.
Comparas las variables con el fin de verificar si una de ellas tiene un valor mas alto que la otra y si se cumple se envía un mensaje .
El mensaje ira en función de los valores de/en los cuadros de texto (pero no se indican los valores introducidos para poder partir de algo concreto) lo que si se aprecia es que se introducen dentro de al expresión de texto algo un tanto raro: los nombres de las variables con los valores de fecha, encerrados entre almohadillas .... ¿con que fin?.
Esas variables Access las vera como variables 'fuera de las comillas' (y sobrarían las almohadillas, que acostumbran ser útiles en otro contexto), si Access buscase variables dentro de los textos y las tradujese, imagina por un momento el desastre que crearía con una tabla con (por ejemplo) nombres y apellidos .... que son cadenas de texto.
En fin, si se desea mostrar las fechas en el mensaje, la sintaxis correcta seria algo similar a esto:
Msgbox "La fecha inicial : " & inicio & " deberá ser menor que la de termino: " & termino
Como se desea enviar el foco a otro objeto, el resto que sigue ... debería ser ignorado (no tiene sentido continuar), asi que un Exit Sub tras enviar el foco pondría cada cosa en su lugar.
A mayores:
Si te molestas en convertir el contenido de los cuadros de texto en variables de tipo date (lo cual es correcto) ¿Por qué en líneas posteriores aparece la referencia a los cuadros de texto (eso si: sin el 'me') en lugar de los datos en formato fecha: las variables que contienen el dato correcto ...