Add support for custom source regions in imageImpl

As suggested by Ben