Thanks for the useful script!
However, I noticed that you used:
Select @vString = Replace(@vString, @vWord, '')
This replaces _all_ occurrences of @vWord in @vString, eliminating repeated words in the title.
I fixed this using:
Select @vString = RIGHT(@vString, LEN(@vString) - LEN(@vWord))
This will just strip the first word from the string, which I believe was the intended behaviour.