It is not clear what problem do you have with pixel offset; this matter is very delicate, especially its impact of both performance and quality, especially in zooming of images.
I advise to read this interesting and advanced CodeProject article:
Image Resizing - outperform GDI+[
^].
Yes, I know it's .NET but it can give you some ideas; it's generally very hard to find information in this topic.
—SA