Ho scoperto a cosa era dovuto: mai come adesso avevo impostato la scadenza del cookie a 2 anni nel modo seguente:
cook.Expires= DateTime.Now().AddYear(2);
e secondo me un valore di scadenza del genere non è accettato dai browser, infatti poi ho cambiato e l'ho impostato a 100 giorni:
cook.Expires= DateTime.Now().AddDay(100);
e tutto funziona.