It makes no sense to want to insert a row in a DataTable at a specific location as it is not visible to the user and you can visually place it anywhere you want in the control that you do use to display it as shown here where I am replacing a column in a DataGridView in a WinForms application.
ToDoManager.Controls.DataGridViewImageButtonSaveColumn col = new ToDoManager.Controls.DataGridViewImageButtonSaveColumn();
dgvLinks.Columns.Insert(0, col);
dgvLinks.Columns.RemoveAt(1);
but if you must place at a specific location try;
_masterTable.Columns.Add().SetOrdinal(index)