This question already has an answer here:
I am trying to get the Enthusiast badge. However, trying to coordinate my visits to the site with UTC time is hard.
There is no reason why you can't time these badges in the user's local time, either by IP address or a setting in the Profile. (If there is, comment.)