This should work for you if you are willing to use bitmaps
Bitmap mutableBitmap = originalImageBitmap.copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(mutableBitmap);
canvas.drawBitmap(overlayBitmap, null, new RectF(left, top, right, bottom), null);
Here you have your original image in a bitmap. You create a mutable bitmap that can be edited, then you create a canvas from the mutable bitmap, use RectF
to specify your overlay bitmap drawing parameters and you then simply paint the second bitmap onto the first and set the mutable bitmap back to your ImageView