You can simply overlay the camera preview surface with an image view which has a drawable with partial transparency. PNG is just fine.
You can use built-in face detection library to find whether the face is in right position. This library is very limited, e.g. it will not recognize faces slanted by more that are not upright. Also, this library is not very fast, so you can check the result only few times per second (YMMV depending on the CPU power and preview image resolution).
You can use OpenCV if you need more power and sophistication, but it will not be much faster.
Android does not provide tools to blend the frame with the picture for the final satge, you will need a 3rd party library.