That was my first thought, but the documentation said that loading an Image is slow
That's true, the three slower things are:
1- Accessing the pixels from a file on the disk
2- Creating an OpenGL texture
3- Uploading all the pixels in video memory
Since you're not using 1, and that 2 is optimized (i.e. skipped) when the same Image instance is reused with the same dimensions, your only concern is 3, which is optimized enough for real-time update.
I presume it copies the data?
Yes, both to system and video memory. In the future, there should be an option to skip the system memory copy when it's not necessary.
And I should proceed to draw it as a Sprite?
Absolutely.