The box you see is a non-printable character, probably a CR or LF (CHR(13), CHR(10) respectively). This character is most likely being appended to the string by the spell checking routine you are calling. You can fix this by trying this change;
* The following line removes any CR and/or LF from the string
gcText = StrTran(STRTRAN(gcText,CHR(10),""),CHR(13),"")
IFthis.Enabled AND !this.ReadOnlyIFthis.SelLength > 0this.SelText = gcText
ELSEthis.Value = gcText
ENDIFENDIF