У меня три картошки. У меня одна картошка. You can say so in Russia it is not a mistake.
Although the genitive ending for singular feminine nouns ending in -a (in nominative form) is actually -ы, the Russian Spelling Rules require that -ы be changed to -и when it comes after К - and after Ш, Ж, Щ, Ч, Г, or Х. Thus nominative картошка becomes genitive картошкы which is changed to картошки because of the Spelling Rules - but it is still singular.
I suggest "Have you any butter ..." should be accepted. For some reason I was discounted for omitting "got"! Re "some" and "any" in English, these should be fine for plurals and non-countables (e.g. "butter"). They are the plural / non-countable forms of the indefinite article "a" ... which does not exist in Russian. The Russian language does not use such articles, but it would be appropriate to use these in English sentences, negatives and questions!
The "have got" "correct answer" in Duo is terribly misleading. It's very poor English in most ordinary and usual instances. "Have you any butter" sounds like something out of a nursery rhyme or a 19th century English novel. Just use "Do you have (any) butter for the potatoes", at least for beginning translations. That's the usual and normal English translation.
У by itself in a sense means, "by", "near", "from", or "with." Unlike in English, Russian uses it for talking about possession, "to have." У is followed by genitive nouns like попко́рна or тебя. For possession, I'd reccomend using these formulas:
For <<Something>> has <Something else>. У <<Gen>> есть <Nom>.
For <<Something>> does NOT have <Something else>. У <<Gen>> нет <Gen>.
I was curious about this point from a different angle: the Tips and Notes say that Genitive is used with mass nouns to express "some" - however, since the preposition для is being used and it requires Genitive also, the "some" concept may very well be over-shadowed by the preposition requirement.
Said another way - the presence of для obscures the significance of the Genitive case here in regard to "some", so it makes that usage ambiguous and uncertain.
What I conclude from a situation like this is that, if it's not certain whether to use a translation, don't do it. Stay as generic as possible, rather than getting into the specifics.
That doesn't mean it's incorrect. Duo just gives one correct answer at the top of all its pages, when there often if not usually are any number of "correct" answers.
And the fact that Duo might not accept "some" as an answer doesn't necessarily mean that it's wrong, either, because sometimes the moderators don't include a correct answer because - well, for a number of reasons, like they forgot.