title: FillRect doesn't work in some case
body: <p>in my code:</p>
  
  <pre><code>void Surface::paintBorders(const Color&amp; color, int borderWidth){
  HBRUSH colorBrush = CreateSolidBrush(color.getRGB());
  RECT border;
  
  //Top Border:
  border.top = 0;
  border.bottom = borderWidth;
  border.left = 0;
  border.right = mRect.right - mRect.left;
  FillRect(mHDC, &amp;border, colorBrush);
  
  //Bottom border
  border.top = mRect.bottom - mRect.top - borderWidth;
  border.bottom = mRect.bottom - mRect.top;
  border.left = 0;
  border.right = mRect.right - mRect.left;
  FillRect(mHDC, &amp;border, colorBrush);
  
  //Right border
  border.top = 0;
  border.bottom = mRect.bottom - mRect.top;
  border.left = mRect.right - mRect.left - borderWidth;
  border.right = mRect.right - mRect.left;
  FillRect(mHDC, &amp;border, colorBrush);
  
  //Left border
  border.top = 0;
  border.bottom = mRect.bottom - mRect.top;
  border.left = 0;
  border.right = borderWidth;
  FillRect(mHDC, &amp;border, colorBrush);
  
  DeleteObject(colorBrush);
  </code></pre>
  
  <p>}</p>
  
  <p>only the top and the left borders are being painted , with the bottom and the right aren't.
  I quote from MSDN:</p>
  
  <blockquote>
    <p>This function includes the left and top borders, but excludes the right and bottom borders of the rectangle.</p>
  </blockquote>
  
  <p>I don't know if it's related or not .
  I know for sure that all the coordinations are OK, also the HDC and HBRUSH parameters. 
  any ideas?</p>