title: Cursor keeps resetting to default unless I set it on MouseMove
body: <p>Have a simple form that has a PictureBox in one location. I want to change the cursor to the Cross cursor when entering that control, and change it back when it leaves.</p>
  
  <pre><code>private void Canvas_MouseEnter(object sender, EventArgs e)
      {
          this.Canvas.Cursor = Cursors.Cross;
      }
  
      private void Canvas_MouseLeave(object sender, EventArgs e)
      {
                      this.Canvas.Cursor = Cursors.Default;
      }
  </code></pre>
  
  <p>This doesn't work. If I look closely, I can see it quickly change on MouseEnter, but it flips right back to the default cursor. I have to add <code>"this.Canvas.Cursor = Cursors.Cross;"</code> to the MouseMove event in order for it to work, but then I can constantly see it flickering back to the default cursor.</p>
  
  <p>What gives? This is the only cursor-related code in my whole application, what would be causing it to reset to the default cursor every time I move the mouse?</p>
  
  <p>Thanks.</p>
  
  <p>EDIT: I am an idiot. Person I am collaborating with on this little app had some cursor code tucked away somewhere else that was causing the problem. Thanks guys.</p>