Very good question!
a) We've found that OpenCV's boilerplate algorithms have much bigger problems than the ones you have mentioned in deployment scenarios. So, we've had to develop something better from the ground up (while still using the OpenCV infrastructure).
b) For the tracker to go back to tracking your face, it would require global re-detection which is usually a much slower process. Moreover, the tracker would have to know what your face looks like under different lighting conditions and angles. This is something we are investing in heavily. Convolutional neural networks have shown a lot of promise!