Salve a tutti non riesco a capire perchè non mi funziona il seguente script per la manipolazione del DOM.

Ho il seguente frammento di HTML (che non posso modificare perchè mi occupo solo della parte lato server in questo lavoro)
codice:


 <input type="text" name="username" id="username" class="validate[required] text-input" value="" size="22" />
<label for="username">Username <span class="red"> *</span></label>
</p>
Ed ho scritto il seguente script javascript che mi deve sovrascrivere il testo contenuto nel tag small.
codice:
var input = document.getElementById("username");
var label = input.nextSibling;
var small = label.firstChild;
var testo = small.firstChild;
small.removeChild(testo);
var newText = createTextNode(nome);
small.appendChild(newText);
logicamente non funziona e non capisco perchè, qualcuno può darmi una dritta?