Non ho capito tutto quel programma.
Se devi controllare se una data esiste, basta che la trasformi in data e poi usi i metodi di Date():
codice:
function dataPrg(data,campo,mform,giorno) {
var tmp = data.split(/[\/\:\.]/);
var adesso = new Date();
if(parseInt(tmp[2],10) < 100) tmp[2] = "19"+tmp[2];
var dat_inp = new Date(parseInt(tmp[2],10), parseInt(tmp[1],10)-1, parseInt(tmp[0],10));
if( tmp[2]!=dat_inp.getFullYear() || tmp[1]!=dat_inp.getMonth()+1 || tmp[0]!=dat_inp.getDate() ) {
alert("la data non e` corretta");
// ...
}
}