A good trick that's been used on some of the answers here is to invent a "Gamma" alphabet {x}
Now you push x's onto the stack.
Why?
It helps you keep the READ and the PUSH operations separate in your mind. The way we're using the stack at our level, all they do is count like tally sticks.
It's a slightly petty point, but remember that you are never taking the a you read from the Tape, and moving that selfsame a to the Stack. You read from the Tape. If its an a, you can branch on that, and that's all. The letter only tells you which branch to follow.
Now if along that branch you devise things such that you'll end up with a PUSH in your path, then (without regard to the letter that got you there) the machine will blindly push something onto the Stack.
Of course you can branch on POP, so you're not always putting mere tally sticks on the Stack ...
... but you can push anything. You can push X onto the stack if you reach it via an a-branch, for instance.
============== OK and now a bit on the actual question ==========
(i) Where will you get the a you want to pop from stack 2? (Maybe there are more questions one could ask here, but I'll just ask one).
(ii) 2PDA = TM = nPDA is a better answer, I think, but I reckon someone could come up with something yet better. .... Whoa ...
The way the next questions are framed that looks like it would not be the answer sought. I think what we'd need to do here is show how one could make Stack 3 such that it's guaranteed not to change anything.
Pause..