Так я именно об этом и говорю. Чтобы продраться через эти дебри (тем более, зачем-то смешанные с C++), нужно потратить довольно много времени (помимо понимания unsafe кода, которое шарпистам не больно то и нужно, поэтому мало кто туда вообще лезет).
И вы в том числе слабо понимаете, что происходит, потому что всё свалено в кучу.
Напишите по пунктам, что вам надо сделать на верхнем уровне: ввести элементы, вставить элемент, вывести на экран. Каждый блок будет методом. В каждом методе - то же самое: здесь надо сделать 1)..., 2)..., 3).... после каждого комментария блок кода, который это делает.
В итоге гораздо проще будет разобраться, где ошибка (если она есть): в инициализации, в добавлении или в выводе.