As for happiness, I think there are several factors explaining it, even if I believe there is no way to measure it precizely and make rankings of happy countries.
First, there are basic needs: people need to have food, water, and they must be healthy. That's why all of the third world is at the bottom of the list.
Then, you need security. That's why all the countries at war are also at the bottom of the list.
Then, you need some freedom. You can remove all the dictatorships from the top of the list, even if people are in security and if they are not starving, like in Saudi Arabia.
Then, when you have food, security and freedom, you have to find the good mix between wealth (work: everyone must be able to find a job and that job must bring a reasonable income, and there musn't be too much social disparities) and leisure (with a good quality of life and environment).
I think the Scandinavian countries score so high because unemployment is very low, there aren't a lot of social disparities (that's easier when you have an homogeneous society), and they live in a healthy environment.
I think the USA score less because, even if Americans are richer on average, there are huge disparities (there are some extremely rich Americans, but there are also extremely poor Americans, while in most Europeans societies, richs are only moderately rich and poors are moderately poor, thanks to our social security system). That may be explained because there are many minorities in the USA, and when there are big minorities it is more difficult to establish wealth redistribution (Danish are generous with their unemployed people because everyone there is Danish; they would be less generous if half of their jobless people were Africans).
Another difference IMO is that people in Europe feel quite secure, while in the USA there seems to be a paranoia about terrorist attacks since 2001.