A TRadioGroup is a self-contained control that manages its radiobuttons internally, whose number depends only on its Items.Count property.
You are trying to interfere with that internal button creation and management by adding radiobuttons to the control that you create manually, which won't work as you expect. Your Buttons array is completely unnecessary, and the wrong approach altogether. Remove all reference to Buttons.
Stick to using RadioGroup1.Items.AddObject() to add buttons to the control, and RadioGroup1.Items.Clear to remove them.