метод .text() - возвращает содержимое без тегов.
И получается что:
1) Получили содержимое в виде текста, обернули A в span
2) Получили содержимое в виде текста (А уже без span'a), обернули B в span
3) Получили содержимое в виде текста (А и B уже без span'a), обернули C в span
Так что, вместо
$(this).text().replace
надо
$(this).html().replace