Try this:
switch ((PaymentType)Enum.Parse(typeof(PaymentType),salesOrderPayment.PaymentCardKey,true)))
Notice the cast to PaymentType
type, also note that your switch cases has to be enum fields rather than strings.
I've used another overload of Enum.Parse which takes bool ignoreCase
as parameter, make use of it so that you don't need ToUpper
call.