Even if you are using Scrum or any other development model, agile or not, it is always good practice to have a short status meeting with your team every day. Usually the best time for such a meeting is in the beginning of the day as it gives the team the chance to resolve any issues the same day. Having the meeting in the afternoon implies that any issues probably have to wait until next morning, which is usually not a good thing.
So far, nothing new. The practice of a short stand-up synchronization meeting is pretty well established and non-disputed.
What if you have a team that is distributed not only in distance, but also over different time zones?
Which time zone should be used as basis for determining when to have the meeting? Usually the project it ends up being run by the project manager’s (*) watch. That means that the team in the other end probably will have the meeting in the afternoon. A pretty usual distributed team setup in Europe nowadays are something like this:
Europe: Project manager, architect, test manager
Offshore (China or India): Lead developer, developers, testers
That means that the largest part of the team, the team that actually are doing most of the work are having the daily scrum at a less optimal time of the day than the project management. I think that to really succeed with distributed agile development, you have to let the team decide how to work even if this implies awkwardly timed daily scrums for the project management. Of course, this applies to other aspects of the development process as well.
(*) …or Scrum Master if you prefer…