Most of the times are pretty close. The only discrepancy is for yesterday. I don't think wunderground.com or weather.com have data for yesterday. However, after the 3 AM reset sunset time is yesterday's sunset, not today's, and moonrise and moonset times can be yesterday's times for several hours.
Right now I am estimating these times. I am thinking to improve this by saving today's times to a file and moving today's times to yesterday's times when there is a difference between the downloaded times and the stored times. On a skin reset I would estimate yesterday's times (just once) and then compare the calculated times with the stored times. If the calculated times are more than some interval (1 to 2 hrs) after the stored times, then I would store the calculated times as yesterday's times.
With this calculation, yesterday's times will be the times that were downloaded yesterday except when the skin wasn't running yesterday, and then the times will be the estimated times that I have calculated.
I haven't tried to program this yet. It really wouldn't make much of a change in my times and would only be for the programming challenge.
This would be a whole lot easier if I found a source for yesterday's values.
As you point out, things become harder above 67 degrees of latitude. I know this is a programming challenge. However, I expect that the only reliable way to derive these times is to calculate them directly and not use a website source. At the north pole, from the spring equinox to the fall equinox the sun will only traverse the 180-degree upper arc of your skin for 6 months. While it may be possible to include these regions, there are no permanent residents living south of 67 degrees south and only a few thousand people living permanently north of 67 degrees north. For most of these polar regions, internet service is very slow (satellites are close to the horizon and there is very little bandwidth). So if you do manage to calculate values for the polar regions, there are very few people to use the information, and their internet connection may be limited as well. (Probably full committed to cat videos.)