With Asia mile you are allowed 5 stopovers but the problem with your itinerary is YYZ-DSM, DSM-BHM, BHM-SFO, SFO-SIN. There aren't any direct flights so you would have to transfer. These legs will use up your 2 allowed transfers. Not to mention SIN-LHR is only flown by BA. If you fly CX, MH or any other OW, it will be another transfer. So my suggestion is pay for your own travels on the US domestic legs or use miles for those legs independently. Most likely those legs will be in Y. I roughly looked up you total flight miles and it's in the 23,000 range. If you cut out some of the domestic transfers, you might be able to get it down under 20,000 and save some miles.
I'm not sure if you are looking for Y or J travel.