Non sono pratico di REGEX, però credo che avendo la pazienza di capire come scrivere la giusta stringa di controllo con un MATCH risolvi la cosa con poche righe di codice senza bisogno di successivi controlli.
Se comunque trovi una soluzione alternativa che funziona correttamente direi che non ci sono problemi.
In questo esempio il controllo avviene totalmente solo con il REGEX
https://www.regextester.com/99555
Forse la stringa và leggermente adattata, però puoi provare a mettere le date che vuoi e vedrai che ti dà il MATCH solo se scrivi una data valida.
Permette un solo tipo di errore:
il poter inserire date come 31/11/2019