title: Adding a day to a Calendar in Android fails on 31st
body: <p>Assume currently the date is the 28th of May. If I call the following commands in order the output becomes</p>
  
  <pre><code>cal.add(Calendar.DATE, 1);  // Day = 29
  cal.add(Calendar.DATE, 1);  // Day = 30
  cal.add(Calendar.DATE, 1);  // Day = 31
  cal.add(Calendar.DATE, 1);  // Day = 31
  cal.add(Calendar.DATE, -1); // Day = 29
  </code></pre>
  
  <p>Why is this not jumping into the next month? And why is it stuck at the 31st (but when you minus one it jumps to 29)?</p>