Ok, I seem to have found the solution just after writing the above post.
For those who find this thread in the future, use the image manipulator to copy from the source sprite, crop it to the size of destination sprite at the location within the source sprite you need, and then copy to the destination sprite.
Haven't done any performance checks on this yet, but I can't see any reason why it isn't going to be fast enough for what I want.
EDIT: Ouch! That method is painfully slow, and of no use to me at all.
Back to the drawing board.