Resolved in #2350 (comment) to expand the allowed sources of copyExternalImageToTexture to include any canvas that can normally be used as a source, i.e. anything that toDataURL() can be called on to get the actual canvas contents.
#2350 will expand it to allow "webgpu" canvases to be copy sources. This issue is to expand it further to be consistent with other types of canvases.