@manwich Architect here. There is some good info above, but I will add my advice.
Never put shingles on top of existing shingles. If you read the warranty terms and conditions on the new shingles, it will specifically prohibit this. The only time the IBC allows a new roof to go on top of existing roof is when you put modified bitumen roofing on top of a traditional asphalt built up roof. And even this can only be done only once before you have to tear everything off and start from scratch.
On the low slope roof, you need to put an ice and water shield membrane underneath the new shingles. You could switch roofing types at the low slope roof, but that would probably look funny and be more expensive.
Make sure you get a joint manufacturer/installer warranty. The manufacturer guarantees that the product will perform for a period of time if properly installed per their instructions. The installation warranty (from the roofer) guarantees that it was properly installed per manufacturer's instructions.
The big thing to watch out for is the vented vs. unvented attic conditions. It seems like you may have a combination of both conditions at your house. The fact that you have had ice build up on the roof indicates that their is a problem with your existing insulation and venting. Here is a decent primer on venting: venting primer.
Open and closed cell spray foams are not interchangeable. You need to make sure you choose the correct insulation, venting, and roofing conditions for each of your roof types (attic vs. no attic, vented vs. non-vented). Failure to do so will result in water vapor condensing in an uncontrolled location, which will lead to mold and rot.
If you contractor isn't able to clearly explain your different roofing assemblies, and how they will handle condensation at each different assembly, you either need to find a different contractor or hire an architect to design the different assemblies for your different conditions.