diff --git a/src/Markup/Perspex.Markup.Xaml/Context/PerspexWiringContext.cs b/src/Markup/Perspex.Markup.Xaml/Context/PerspexWiringContext.cs
index ab16826dc6..040ef313ba 100644
--- a/src/Markup/Perspex.Markup.Xaml/Context/PerspexWiringContext.cs
+++ b/src/Markup/Perspex.Markup.Xaml/Context/PerspexWiringContext.cs
@@ -88,7 +88,7 @@ namespace Perspex.Markup.Xaml.Context
var typeConverterProvider = new TypeConverterProvider();
var converters = new[]
{
- new TypeConverterRegistration(typeof(Bitmap), new BitmapTypeConverter()),
+ new TypeConverterRegistration(typeof(IBitmap), new BitmapTypeConverter()),
new TypeConverterRegistration(typeof(Brush), new BrushTypeConverter()),
new TypeConverterRegistration(typeof(Color), new ColorTypeConverter()),
new TypeConverterRegistration(typeof(Classes), new ClassesTypeConverter()),
diff --git a/src/Perspex.Controls/Image.cs b/src/Perspex.Controls/Image.cs
index 0b316689bd..26dc930a06 100644
--- a/src/Perspex.Controls/Image.cs
+++ b/src/Perspex.Controls/Image.cs
@@ -27,7 +27,7 @@ namespace Perspex.Controls
///
/// Gets or sets the bitmap image that will be displayed.
///
- public Bitmap Source
+ public IBitmap Source
{
get { return GetValue(SourceProperty); }
set { SetValue(SourceProperty, value); }
@@ -48,7 +48,7 @@ namespace Perspex.Controls
/// The drawing context.
public override void Render(DrawingContext context)
{
- Bitmap source = Source;
+ var source = Source;
if (source != null)
{