Why can't I say “she died from drinking 18 cans of Coca-Cola”? Instead, the correct sentence would be “she died of drinking 18 cans of Coca-Cola”. Why does that happen?
Both actually work. It just depends who you are talking to. Different people will find different versions more natural. Either way, everyone will understand the point you are trying to make.
Some of the information contained in this post requires additional references. Please edit to add citations to reliable sources that support the assertions made here. Unsourced material may be disputed or deleted.