About a year ago, I wrote a blog post called “A SmartContract best practice: Push, Pull, or Give?” explaining why you need to call the contract explicitly when you withdraw your funds, for security and gas cost.