1- well during ATPG we use some models, and during simulation other one, the ATPG could generate wrong patterns due to inconsistency in the model.
2- with serial simulation, you check also the worst hold time constraints.
3- hardcoded Bist is limited to a type of checks, if you need to extend or reduce it, you could not.
4- well you do not check the same stuff, no?
5-no
6-the ATPG tool has normally a diagnose mode, you provide which patterns was different and the ATPG will indicate which or what could be the source of the problem.
7-to improve the coverage, you could report the uncovered faults, and after you need to analysis this list.
8-which latch?, for the latch used for clock gating, need only to be transparent during the shift phase, during the capture, this one could used the functional mode, to improve the coverage.
9-that depend of the MBIST strategy, I means, did you want to have a BIST engine for each memory, or for a group....
10- too large question, that depend of your design, I means ratio combinational versus flop, and which coverage you want to reach?