Pixel size of ImageSource
Super old post, but for anyone else having problems with this, you don't have to do anything crazy or complicated.
(ImageSource.Source as BitmapSource).PixelWidth(ImageSource.Source as BitmapSource).PixelHeight
There are 2 types of ImageSource: DrawingImage and BitmapSource.
Obviously, DrawingImage does not have DPI or pixel width, because it's essentially vector graphic.
On other side, BitmapSource has PixeWidth/PixelHeight and also DpiX/DpiY.
http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapsource.pixelheight.aspx