You will always approve two transactions. The node will have to search these two transactions, and when it starts to search deeper, it will have to validate more transactions on the way (and your transaction will indirectly confirm more unconfirmed transactions). The PoW for you will always be the same (only depending on the number of transactions your own bundle has).
The current algorithm will start tip selection once from an older milestone (depending on depth) and once from the latest milestone. If there is no other transaction from the latest milestone (or only inconsistent ones), one of the returned tips will be the latest milestone, otherwise it can be a more recent transaction attached to the latest milestone. The second tip will be most likely not a milestone: when you start walking from an old milestone, the node you end up can never be an older milestone than the current one (as you could always walk from that one to the latest milestone without causing conflicts), and the probability you get a different transaction here is quite high.
So, the chance of getting 2 milestones is pretty slim (although I have seen it on testnets consisting of almost only milestones), the most likely case being 2 non-milestones on an active tangle and one milestone (the latest one) on a less active tangle (where there are no more recent transactions).
You can, however, be sure that at least one of your tips will confirm the latest milestone (and the other probably not; making the probability higher when you use a higher depth).