Thanks for clarifying the API you are using.
#include <IViewDraw.h>
Interface IViewDraw inherits from IDrawGeom in the MicroStationAPI. IDrawGeom supplies DrawRaster.
dell:
Can I split the viewport image data into smaller chunks
IViewDraw additionally supplies method DrawTiledRaster.
dell:
mdlRaster_xxx is not suitable to our requirements
It's still not clear why you discount the mdlRaster_api. There's a lot more in it than is provided by the single method IDrawGeom.DrawRaster.
If you want GIS location, then the mdlRaster_api includes that (mdlRaster_geoReferenceInfoGet etc). If you want more sophisticated warping and transformations then you should consider one of the add-ons, such as Bentley Map or Bentley Descartes.