Why are you using a varchar value for a datetime in the first place?
The database have to be culture-agnostic. The localization have to be done on the client side, according to regional settings of the user account it runs in.
In other words, you take care of the datetimes formatting when you display them to the client, not when you store them in the database.
You did not create a customized datetime format in db, you just created your worst nightmare. Your DB design is flawed, and you should correct that in the first place, i.e. use datetime type for datetime values. Doesn't it make sense?
Hope this helps :)
[Edit] Completed from your comment
Here's where you will find informations on displaying a DateTime according to specific culture informations:
DateTime.ToString() Method[
^]
Formatting Types in the .NET Framework[
^]
Standard Date and Time Format Strings[
^]
Custom Date and Time Format Strings[
^]