Вам не нужно создавать свою собственную культуру. Вам нужно только изменить свойства DateTimeFormat.DayNames и DateTimeFormat.MonthNames в текущей культуре.
т.е.
string[] newNames = { "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo" };
Thread.CurrentThread.CurrentCulture.DateTimeFormat.DayNames = newNames;
Однако странно, что en-US показывают месяцы и дни с первой заглавной буквой, а для mx-ES - нет.
Надеюсь, это поможет!