"Why?" is straightforward, direct. It doesn't suggest that the situation is surprising. It is just a request for an answer or an explanation.
"How come?" is specialized. It implies that you find the situation puzzling or surprising. It often conveys a sense of annoyance, or even skepticism.
Roughly, you can almost say that "how come?" is short for "if that's really true, then how come..."
"Why should I include stocks in my investment portfolio?" "Historically, over the long term, they have made more money than bonds or cash."
"If stocks are such a great investment, then how come I have less money now than I did at the beginning of the year?" "Because eleven months isn't the long term."
"Why is it colder in winter than in summer?" "Because the sun is shining on the earth at a lower angle, and the same amount of sunlight gets stretched out over a larger area of land."
"If that's so, then how come it is 16° today in November, when it was only 14° back in August?" "Because the angle of the sun only one of many factors that influence the temperature."
"Why is the long e sound in 'receive' spelled 'e-i' while the same sound in 'believe' is spelled 'i-e?'" "Because the rule is:
'I before e,
Except after c,
Or when sounded like 'a'
As in 'neighbor' and 'weigh,'
Except 'seize', 'inveigle,' 'either,'
'Weird,' 'leisure,' 'neither.'"
"Then how come 'science' is spelled with an 'i-e' after 'c?'" "Because no spelling rules in English can be trusted."