'She gives girl a book' is wrong, why? I'm from Brazil and i speak portuguese.
Without context "for" the girl is the most natural choice in English, as "para" indicates destination.
Is this sentence the same (or different) when somebody gives the book FOR the girl but not TO her personally? It sounds like that to me: She gives a book [to the mother of the girl that will give it] to the girl. So, if a woman is giving a book to Laura, telling her that it's for her daughter, would the sentence be "Ela dá um livro para a menina"? Or?
It's also not so easy for not native English speakers to catch every nuance of every little word and guess the order of the words :( When will you give us more languages, please? I would make it better, for example, from Italian to Portuguese... because I know it better.