While we’re waiting for a native speaker, my impression is that yes, they all mean things covered by English “please.” Per piacere (lit. by [your] pleasure) is slightly more formal than per favore (lit. by [your] favor / kindness), which is more common. Prego (lit. I pray) is a bit more like German bitte in that it’s more of a tag word used to smooth social communication. In other words, if I’m asking someone to do something, I’d use one of the two-word phrases. If I’m just responding politely or saying “please” in the sense of “excuse me,” I’d say prego. Confusingly, it also means “you’re welcome.”
I’m unfamiliar with German, but one thing that struck me when I went to Italy is how versatile the word prego seems to be. Although I learned it to mean “you’re welcome”, people seem to use it in far more contexts than that. The rule I learned was “when in doubt, say prego”. You probably won’t be wrong.
Prego is also used by waiters to mean “Can I take your order?” - again, same as German Bitte.
One thing I have noticed, though, is that many European languages don’t use “please” to the same extent as English. I was told that constantly adding “por favor” or “s’il vous plaît” or “per favore” to the end of requests was something that only foreigners do - in most cases, if you’re ordering something in a restaurant or whatever, you wouldn’t say “please”.
“You’re welcome” after you say grazie
“Enjoy your meal” when you’re served or otherwise given something
“After you” if someone holds the door
“Please” as an affirmative response to a request: “May I sit here?”
“That’s quite all right” if you bump someone and say “Mi scusi” or “Mi dispiace” [ETA]
but I never heard anyone use it in conversation to make a request polite. Oddly as a tourist I can’t remember anybody asking me for anything so I dont’ recall which of the three (OP) I may have heard in that context.