title: Wrong delete in Navigation Stack in Xamarin.Forms
body: <p>I have a little, simple but crazy problem with Xamarin.Forms and its Navigation Pages system.
  I have my App that start like this:</p>
  
  <pre><code>MainPage = new NavigationPage(new IntroPage());
  </code></pre>
  
  <p>So, I have my NavigationPage. Now, I do something operation and my Navigation Stack (from top to down) is like this:</p>
  
  <pre><code>NewPersonPage (Page where I am now)
  ------
  RolePage
  ------
  RegisterPage
  ------
  DetailsPage
  ------
  HomePage
  ------
  IntroPage
  </code></pre>
  
  <p>Now, I want to do this. 
  Delete from this stack: Role, Register and Details Page.
  After, going to new DetailsPage for have a situation like this:</p>
  
  <pre><code>DetailsPage (new, and where I am now)
  ------
  NewPersonPage
  ------
  HomePage
  ------
  IntroPage
  </code></pre>
  
  <p>To do it, in NewPersonPage I do this:</p>
  
  <pre><code>// Remove RolePage
  Navigation.RemovePage(Navigation.NavigationStack[Navigation.NavigationStack.Count - 2]);
  // Remove RegisterPage
  Navigation.RemovePage(Navigation.NavigationStack[Navigation.NavigationStack.Count - 2]);
  // Remove DetailsPage
  Navigation.RemovePage(Navigation.NavigationStack[Navigation.NavigationStack.Count - 2]);
  
  // Now create new DetailsPage and go here
  await Navigation.PushAsync(new DetailsPage(stuff));
  </code></pre>
  
  <p>And for now there aren't a problems.
  Now, from my new DetailsPage, I want to delete the NewPersonPage from my stack. So I do this:</p>
  
  <pre><code>// Remove NewPersonPage 
  Navigation.RemovePage(Navigation.NavigationStack[Navigation.NavigationStack.Count - 2]);
  </code></pre>
  
  <p>But it doesn't works! Throw an Exception that say I'm out of range of my stack. But it's not true, because if I try to go on previous page, I did it and I go on the NewPersonPage.
  Why don't work correctly?</p>