There is surely a better way to do that (weekdayFormat and dayFormat could be merged together at least).
And using Joda time `DateTimeFormatter.withLocale(Locale.UK)` should provide a nice format you could create with `DateTimeFormat.mediumDate()`.