CBP bases their decisions on the nature of the crime, and how it's treated/punished in the US, not how it's assessed in Canada.
You can be convicted of a DUI in Canada, which is a federal offense, but it might be considered a misdemeanor in some US jurisdictions, and so not necessarily disqualifying. The reverse is also true, a DUI in New York, without legal remediation, is diqualifying for entry to Canada (if they ask). The pot related stuff is treated more seriously down south, so that's why you're disqualified. If you are asked at the border if you ever smoked pot, and you say "yes", they can refuse entry. CBP border agents are "God", for entry decisions. You can challenge the decision, but the odds are against you. If the issue was on their side of the border, it would probably be harder to clear your name, without legal representation to apply for an entry Visa waiver for you. If in Canada, you can DIY apply for a Record Suspension (formerly aka Pardon), if you really want to enter the US. See more at the Parole Board of Canada. Even showing up at the border with either of these remedies in hand, the CBP agent still has the last word at US Customs inspection. Considering their situation at the Mexican border, it's almost laughable that they would not allow you entry.