Improve Canvas constructor (see issue #79)