You need to implement a repository pattern to seperate WPF concerns from EF
Then you can use generics to reduce the complexity of the EF to CollectionViewSource handling
A well designed repository should reduce code levels and enable any ORM to be substituted (required for decent testing)
Some ideas for this are in here
http://blog.nicktown.info/2008/12/10/using-a-collectionviewsource-to-display-a-sorted-entitycollection.aspx