It's actually not the case that the one sentence means he's home now while the other sentence doesn't.
He's been to Italy doesn't mean that he came back.
We can infer that he's no longer in Italy (although this is not always the case), but we can't assume that he's returned from there and is home now. What if he's been on a trip around the world and is now somewhere other than either Italy or his home?
The same is true of he's been to pick up his daughter from school. Perhaps he and his daughter are now having dinner at some restaurant. There's no way of knowing where he is now.
But the actual location of where he's been, the purpose for him having gone there, and the length of his stay don't have any explicit impact on determining his return or current location.
Both of the he's been sentences can be interpreted in the same way—and the school version can be used to mean the same type of thing as the Italy version.
To make this more explicit, just add many times to the end of each of them:
He's been to Italy many times.
He's been to pick up his daughter from school many times.
Note that as was mentioned in a comment under the question, it might be more natural to move the position of the last part of the school sentence:
He's been to school to pick up his daughter many times.
However, this only changes the parsing. It doesn't actually change anything about the interpretation of where he is now (or if he returned).