One of the flaws is that you have to pay transaction fees even for small transactions. This makes it impractical to use for offline transactions as cash comes with no such fees.
Yes, that's one of the reasons why some people don't invest in Bitcoin; also, the price of Bitcoin is not stable so people are having trust issues regarding to their investment.