Index: GregorianCalendar.cs
===================================================================
--- GregorianCalendar.cs	(revision 906)
+++ GregorianCalendar.cs	(working copy)
@@ -186,9 +186,8 @@
 			dayOfWeek += time->Year / 400;
 			dayOfWeek += time->Day;
 			dayOfWeek += GetMonthPseudoNumber((uint)time->Month, (uint)time->Year);
-			dayOfWeek = dayOfWeek % 7;
 
-			return dayOfWeek;
+			return ((dayOfWeek - 1) % 7) + 1;
 		}
 
 		public unsafe static int GetMonthPseudoNumber(uint month, uint year)
