I'm trying to figure out how to mark the difference between "should" and "must" in Ukrainian, and it's turning out really confusing. Google-translate translates "I should cook" as "Я повинен готувати" but then if I swap the languages it translates "Я повинен готувати" back into English as "I have to cook" rather than "I should cook", so clearly "повинен" is not making the distinction I'm looking for; my dictionary also says "should" is "повинен/повинні" but then says "повинен" is "must, have to".
So, how do you say "I should do X" in Ukrainian in a way that is distinct from "I have to do X"? Or is there just not really a distinction between these meanings, or does it depend on something about the context/form/etc?