If you want an answer from one person, you can post in the Insurance Forum. If you want one from other people, post here.
You have a difficult situation. He said/she said. Let the insurance company send out their hand picked Engineer. Not much you can do to prevent it. Demand a copy of the Engineer's report. I would be shocked if the finding is anything other than in favor of the insurance company.
If you live in a State where they allow and have Public Adjusters available, I would recommend that you consider contracting one to represent your interests, including having them attend the inspection with the Engineer. That is probably the most economic approach. You could obviously hire an attorney who would then likely require you hire your own Engineer to provide a report that refutes the Insurance's pet Engineer. You can see where that starts to get expensive.
I am struggling to see how the world's greatest Engineer would be able to unequivocally prove with 100% certainty the damage was from an ice damn and not from the weight of snow. Therefore, it is unknown which caused the damage which means the insurance technically would have to pay the claim. All case law I've seen shows the benefit of the doubt ALWAYS goes to the policy holder. Sadly, the insurance company realizes it is unlikely you're going to invest 10's of thousands in legal fees trying to recover thousands so they will often ignore their obligation and put the screws to you.
I wish you were somewhere reasonably local, I'd love to meet the Engineer at your property.
Best of luck, take a serious look at hiring a Public Adjuster. Most roofing contractors aren't really equipped to argue this particular issue with an Engineer.