diff --git a/package.json b/package.json
index 0bea68e8..396193a2 100644
--- a/package.json
+++ b/package.json
@@ -29,7 +29,7 @@
     "node": ">=0.8.0 <5.0.0"
   },
   "dependencies": {
-    "jsdom": "git://github.com/lehni/jsdom.git#45c5ad551ff7d12efacac06bea5b29cc3aeadb20",
+    "jsdom": "git://github.com/lehni/jsdom.git#3d55789d0f4d55392721b1e22890837fde472375",
     "source-map-support": "^0.4.0"
   },
   "optionalDependencies": {
diff --git a/src/node.js b/src/node.js
index 77c6f635..25b3910f 100644
--- a/src/node.js
+++ b/src/node.js
@@ -37,7 +37,7 @@ Base.each(
     ['pngStream', 'createPNGStream', 'jpgStream', 'createJPGStream'],
     function(key) {
         this[key] = function() {
-            var impl = idlUtils.implForWrapper(this),
+            var impl = this._canvas ? this : idlUtils.implForWrapper(this),
                 canvas = impl && impl._canvas;
             return canvas[key].apply(canvas, arguments);
         };