You need to change all these places (or at least most of them, this is something that works for me)
protected override void InitializeCulture()
{
if (Request.Form["culture"] != null)
{
String selectedLanguage = Request.Form["culture"];
UICulture = selectedLanguage;
Culture = selectedLanguage;
Thread.CurrentThread.CurrentCulture =
CultureInfo.CreateSpecificCulture(selectedLanguage);
Thread.CurrentThread.CurrentUICulture = new
CultureInfo(selectedLanguage);
}
base.InitializeCulture();
}