Ho trovato questa soluzione, la posto, magari può servire ad altri:
Dim lastIndex As Integer
Me.Refresh()
Dim i As Integer = If(ListView1.TopItem.Text = Nothing, -1, ListView1.TopItem.Index)
If i > -1 Then
If i = lastIndex OrElse i = ListView1.Items.Count - 2 Then
i = 0
End If
lastIndex = i
ListView1.TopItem = ListView1.Items(System.Threading.Interlocked.Increment(i))
End If