I think it may just be how the options are specified. I think perhaps you'll need to specify storage class, for instance, as:
x-amz-storage-class
instead of Storage-Class
I'm not sure about owner though, I had thought that was just by virtue of who created the object (so in the case of the copy it will match who ran the copy operation presumably). I'm not sure that this can be overridden.
Hope that helps.