How to scale an image with python
You can use the Python Image Library (PIL) for instance, there's a Python 3k port:
https://github.com/gpolo/pil-py3k and https://github.com/sloonz/pil-py3k

or Pillow, which is also a PIL fork:
https://pypi.python.org/pypi/Pillow/2.2.1

Example code (for original PIL though):
http://www.daniweb.com/software-development/python/code/216637/resize-an-image-python

As PIL supported differnt interpolation techniques, all of the above should offer the same (or more).

You could also try without any extra modules, by saving the image in blender to another file using Image.save_render(). Note that this method can be used on any image, it doesn't save the rendered image only (render stands for render settings, the render settings of the given scene will be used to save the file. It ignores the resolution settings however. To change scale, you needed to import the saved image again (so that .pixels isn't empty, which is the case for render results), then call Image.scale() and save again. But you can't specify an interpolation mode.