I've found a solution!!!!!
res = Me.dp.Resources.FindById("30-179-27933")
Dim index As Integer = Me.dp.Resources.FindById("30-0-0").Children.IndexOf(res)
Me.dp.Resources.FindById("30-0-0").Children.Insert(index - 1, n)
Working with children it works well!!!!
index = Me.dp.Resources.FindById("30-0-0").Children.IndexOf(res) where "res" is the last child of parent resource the value is greater then -1as required.
Now, using .Children.Insert(index - 1, n) the position is right!!!
Thank you for your effort
Davide