I am testing WPF DataGrid in hopes of replacing some winforms controls, and so far have been very pleased with the development process. Performance seems to be my biggest concer
More general tips:
For scrolling, what we have done is tried to use Deferred Scrolling.
To improve the Filtering performance you could consider filtering the bound collection yourself.
For grids with large number of columns apply ColumnVirtualization as well. This tends to affect the horizontal scrolling a little bit adversely but you could test your scenario and apply improvements. For us it did work perfectly. It helped us on Refresh, Reload, Render scenarios for large grids.
Performance is also impacted by the styling applied.