Mi sono imbattuto recentemente in un baco del framework, tutte le date che cercavo di parsare in qualsiasi formato tramite l'istruzione DateTime.Parse() generavano l'eccezione System.IndexOutOfRangeException.
Navigando un po in alla fine ho trovato questo articolo che spiega come questo sia un baco conosciuto e che siano lavorando per risolrvelo nelle prossime reliase del framework.
Il workround proposto utilizza l'overload del metodo parse frozando la globalization.
DateTime.Parse("30 Mag 2007", new CultureInfo(CultureInfo.CurrentCulture.Name, false));