Here is how I interpreted the ending.

(SPOILER)Cloud and company manage to stop Sephiroth (whatever he'd become) and Jenova (whatever the hell she was in the first place) so that Holy can be unleashed. However, we see Holy and Metor almost in a struggle, with Meteor bearing down as Holy tries to fight it away. The girl in the window is indeed Marlene, and she says "The flower girl" because she's aware of who Aeris was and what Aeris did to save the planet. In short, while Aeris was taking care of Marlene before Sector 7 was destroyed, she obviously told Marlene a lot about herself. Barret probably filled in the rest later when he went to see her before the party left for North Crater.

Anyway.

Since Meteor is actually winning the struggle, the planet starts to react by sending tons and tons of lifestream to heal itself (which is ironic, cause that's what Sephiroth wanted to happen, and even though the party killed him it happened anyway). In the end OF THE GAME* we don't really know the outcome. We only see Meteor about to destroy the planet and Holy failing to save it. However, the last screen, that of Aeris, is supposed to provide hope in the gamer that it all works out in the end, as that's what her character represented throughout the game.

*From trailers for Advent Children, we can assume at least Midgar was destroyed by Meteor. But we're talking about the game .


EDIT: *agrees with Kishi about the Nanaki bit*