You've drifted off-course. We were talking about whether or not double spends are possible in Bitcoin and now you're arguing about how banks deal with fraud refunds. peace!
It prevents double spends under a set of assumptions. One of the assumptions it makes is that the Bitcoin code on your device faithfully implements the system in the paper. It doesn't claim to be the thing that causes that assumption to be valid; you have to ensure that using separate means.
Therefore, Bitcoin code has to have been always free of bugs (malicious or accidental). That has not been the case and will not be the case. The assumption doesn't hold, and double spends are therefore possible.