estas dos lineas no me hacen sentido
Código:
var formatd = vard1[0]+","+(vard1[1]-1)+","+vard1[2]
...
myDate.setFullYear(formatd);
si ya descompones el formato en sus partes, ¿por que lo vuelves a componer con una coma? esa descomposicion es la que tienes que pasar como argumentos cuando creas el objeto Date. es decir,
new Date(vard1[2], vard1[1] - 1, vard1[0]); // año, mes, dia;