Что я делаю не так?Не занимаетесь отладкой своей программы. Если не умеете пользоваться отладчиком, то возьмите лист бумаги, карандаш, и пошагово пройдите всю свою программу.
<root>
<primes>
<prime>101</prime>
<prime>103</prime>
<prime>107</prime>
...
</primes>
</root>
То, что вы пытаетесь сделать - это не массив, а строка. Её надо сформировать заранее и записать уже сформированную одним вызовом SetText.