The default visual mode mapping of surround.vim is Shift–S, not lowercase s.
You can check whether it’s defined with :verbose vmap S
. Do the other surround.vim mappings (ys
, cs
, …) work? If not, check :scriptnames
and :set runtimepath?
for troubleshooting.