As far as your P0446 (which I do not think is causing your issue), I will throw this out fwitw. (I do have a Sierra but it has never thrown that code) but on my Dakota, I am under the impression that the chracoal cannister has its own code, & my Dakota used to throw that code, & I traced it back to ancient rotten rubber lines (which I replaced all of & finally cleared the code). On my GMC I did replace my cam & crank pos sensors because they had been on there for a long long time (18 years & over a 170k) & I felt that it was a legitimate time change & before the system relearned the new sensors it was throwing a random misfire code. I am not saying tat those sensors are your issue (I am under the impression that they either work or they don't, & if they don't, you won't6 start), but I did get that code post sensor changes until the system did a relearn.