Янковиц, у тебя 'background' тоже прозрачный, альфа то общая, поэтому все прошлые отрисовки просвечивают, а еще в интервале opacity в минус уходит.
myCanvas.addLayer({
id: 'background',
render: function(canvas, ctx) {
ctx.globalAlpha = 1;
ctx.fillStyle = 'black';
ctx.fillRect(0, 0, canvas.width, canvas.height);
}
})
var opacity = 1;
var fadeEffect = setInterval(function () {
opacity = Math.max(0, opacity - 0.0125);
if (opacity == 0) clearInterval(fadeEffect);
console.log(opacity);
myCanvas.render();
}, 10);