Yes, i'm using the API correctly, if you go here you'll see: http://docs.shopify.com/api/product#update
Which is exactly the same for a page: http://docs.shopify.com/api/page#update
The only difference is that it works for pages but not products. The method you've shown only has the ability to add one metafield per request whereas the method i've used for pages you can add multiple in one request.