Don't forget that many banks don't really "like" their customers use Bitcoin. The reasons are many - it's the competition, it's somewhat more private than the use of banks (AML?).
Also many people prefer to buy Bitcoin without telling the bank they do that (whether they do that for shady reasons or not).
All in all, BTMs are useful, they show the Bitcoin name in more places around the world and make it more accessible.
Yes, the fees are higher, but for good reason. We need more of them, surely.
This is a major issue. I have seen many threads here, dealing with incidents where the banks closed down bank accounts without any warning, due to the association with Bitcoin trade. In some extreme cases, the funds were frozen, and the freeze was removed after more than a year. I am not sure whether they are doing this due to competition. One reason may be the unclear legal status of Bitcoin.
There are a couple of reasons I could think of:
1. lack of legislation
2. fear of competition
3. insufficient knowledge/understanding on this technology and a "I don't care about it" (also because of [2])
4. insufficient means to find out if the funds are legit and pulling out AML reasons (caused by [1], [3] and [2] too)
5. scam attempts between
BTC buyers and sellers (localbitcoin and so no) - from buyer using problematic funds, from buyers trying to "charge back", from sellers that did double spends.. (I don't know all this for sure, but I expect that such stories may have happened too).
6. fear (in the banking business) that stolen CC may be used to buy
BTC (maybe this also has happened already, leading to [5]).
Yeah, we do need more well implemented BTMs...