DIB direct drawing - Bug 412: Implementing a DIB engine