Repasando por encima la respuesta que te dí me he dado cuenta de un posible error:
Al pasar de un año a otro puede ocurrir que una misma semana pertenezca a dos años diferentes, y la resta de días da negativa en la primera comprobación... es un caso que habría uqe vijilar por posibles errores.
Te dejo el link de la documentación de métodos aplicables a la clase DateTime:
http://msdn.microsoft.com/es-es/libr...rs(VS.80).aspx