RemoveFromParentとRemoveIndexの順番が逆であると考えます
RemoveIndexを先にすると、もとの0番目が削除されてもとの1番目が繰り上がり、0番目と扱われるようになります
その状態で0番目を指定してRemoveFromParentを実行すると、対象となるのはもとの1番目です
どうしても先にRemoveIndexをしたければ、別途変数に0番目の参照をとっておく必要があります
なお、他のWidgetが表示されているように見えるのは、上記の通りに処理されたため、RemoveFromParentが事実上意味の無いものとなっているためです
また、これは蛇足ですが、イベントドリブンであるべきアクション(ボタンを押したら動作する、と決めているアクション)をTickで処理するのは処理状況が分かりづらくなりますのでやめたほうが良いでしょう