¡Je, je! ¡No te preocupes que soy bastante paciente!, además, no me gusta dar el código "hecho" y ser más didáctico...
El índice es del array en que se convierte la cadena de la fecha, entonces es el correcto, pero lo que no es correcto es el mes que representa ya que si
datos[1] devuelve "01" (una cadena de texto), ese 01 no representa a enero sino a febrero, por lo que se debería restar 1:
f.setMonth(--parseInt(datos[1])); // asignamos nuevo mes
o...
f.setMonth(parseInt(datos[1]) - 1); // asignamos nuevo mes
Saludos