Kuwaiti algorithm
Microsoft uses the Kuwaiti algorithm to convert between dates in the Western standard Gregorian calendar and dates in the Hijri or Islamic calendar. There is no fixed correspondence defined in advance between the Gregorian solar calendar and the Islamic lunar calendar, since the latter is defined by the visibility of the new moon by religious authorities and can therefore vary by a day or two, depending on the particular Islamic authority, weather conditions, and other variables. As an attempt to make conversions between the calendars somewhat predictable, Microsoft claims to have created this algorithm based on statistical analysis of historical data from Kuwait. However, its results are identical to a variation of the tabular Islamic calendar, which has been introduced by Islamic astronomers around the eigth century.
Inevitably, any prediction algorithm is imprecise, and conversions can often be in error by a day or two.