"Marzena" is of course form of Latin "Maria". For Polish words before XII century palatalized "r" (ri) had changed in "rz", and instead of Latin "Maria" the Polish were using form "Marza" (today it isn't use, because we return to Maria). "Marzena" is only remnant of the old form Marza (Marza + sufix -ena like in "Bo¿ena").
Marzena is an old Polish form of the past participle of a verb 'marzyc' - to dream. The verb is used in everyday language, but the past participle form seems archaic. So it can be understood directly as 'dreamt of, coming from dreams', or something like that, rather than a form of Mary - of course it is only my impression.