Change this line from
AmericanName = " " & Regex.Replace(Source, "$2$3") & "."
to
AmericanName = " " & UCase(Left(Regex.Replace(Source, "$2"), 1)) & "r."

to force the Jr. rather than Junior.

Cheers

Dave