Ambas son correctas, en sintaxis pertenecen al grupo de oraciones subordinadas adverbiales de tiempo.
Oración subordinada porque en ambas frases una oración depende de la otra, no son independientes.
El 'cuando' en ambas determina el tiempo del verbo. Ni antes ni después, justo en ese momento.
Para cuando me di cuenta...entonces era demasiado tarde.
Cuando me di cuenta...entonces era demasiado tarde
Encontré este documento, copio una parte
Las subordinadas temporales pueden tener distintas estructuras:
Introducidas por el adverbio relativo cuando (sin antecedente expreso): Nos
(CCT) vemos cuando acabe el curso (CCT-PS Adv)
Introducidas por otros nexos equivalentes que expresan tiempo: mientras, antes (de) que, después (de) que, en cuanto, apenas, al tiempo que, en tanto (que), no bien, a medida que, según, desde que…
Ejs.: En cuanto termines, (CPrep-PS Adv T) ven aquí. Mientras esperamos, (CCT-PS Adv) tomemos una caña….
'Para' actúa como nexo en la primera.
Para cuando vengas tú (CPrep-CCT) ya me habré ido yo.
Para cuando no es incorrecta como demuestra en el libro La puntuación al alcance de todos escrito por Myriam Bustos Arrati
Las oraciones subordinadas adverbiales de tiempo van encabezadas generalmente por alguno de los siguientes elementos:
Cuando(a veces, precedido de preposición: para cuando)
Para el primer ejemplo se podría decir Para cuando quise darme cuenta, ya era demasiado tarde