title: wrong bitmap after scale with renderOptions
body: <p>In <strong>dialog</strong>, I need to scale bitmap in cell of datagrid for avoid <em>bluring</em></p>
  
  <p>here is MyFile.xaml</p>
  
  <pre><code>&lt;DataGridTemplateColumn.CellTemplate&gt;
                          &lt;DataTemplate&gt;
                              &lt;Image Margin="1"
                                     Width="90"
                                     Height="18"
                                     VerticalAlignment="Center"
                                     Stretch="Fill"
                                     RenderOptions.BitmapScalingMode="NearestNeighbor"
                                     RenderOptions.EdgeMode="Aliased"
                                     SnapsToDevicePixels="True"
                                     HorizontalAlignment="Center"&gt;
                                  &lt;Image.Source&gt;
                                      &lt;MultiBinding Converter="{StaticResource HatchIdToPaleteImageConverter}" ConverterParameter="90"&gt;
                                          &lt;Binding Path="HatchId"/&gt;
                                          &lt;Binding Path="Color" /&gt;
                                      &lt;/MultiBinding&gt;
                                  &lt;/Image.Source&gt;
                              &lt;/Image&gt;
                          &lt;/DataTemplate&gt;
  &lt;/DataGridTemplateColumn.CellTemplate&gt;
  </code></pre>
  
  <p>But bitmaps in 5th, 20th row are <em>hidden</em> their top but the others are OK.
  If I <strong>scroll</strong> my grid by vertical scrollbar, the hidden image changed: bitmaps in 11st, 26th row are <em>hidden</em> their top but the others are OK. I guess the 5th, 20th datagridcell of view is always wrong.</p>
  
  <p>If I remove <code>RenderOptions.BitmapScalingMode="NearestNeighbor"</code></p>
  
  <p>the bitmap in all rows are showed full but it's blur.</p>
  
  <p>I try to remove the margin or resize my row's height but it's not work.</p>