title: Invalid date ArgumentError and incorrect parse on a valid date?
body: <pre><code>dates = ["11/12/08 10:47", "11/12/08 13:23", "11/12/08 13:30", 
           "11/25/08 19:21", "2/2/09 11:29", "11/12/08 15:00"] 
  </code></pre>
  
  <p>This throws an invalid argument error:</p>
  
  <pre><code>dates.each do |date|
    d = Date.parse(date)
    d.mon
  end
   #=&gt; ArgumentError: invalid date
  </code></pre>
  
  <p>But take the first date in <code>dates</code> and this is the output:</p>
  
  <pre><code>d = Date.parse('11/12/08 10:47')
  puts d.mon
   #=&gt; #&lt;Date: 2011-12-08 ((2455904j,0s,0n),+0s,2299161j)&gt; 
   #=&gt; 12 but this should be 11
  </code></pre>
  
  <ol>
  <li>In the first example why am I getting an invalid ArgumentError?</li>
  <li>In example 2, why is the <code>Date</code> object created with the <code>mon</code> and <code>day</code> swapped?</li>
  </ol>