Because the country went to war over it, and the side that opposed unilateral succession won. All of the states that joined after the war joined with the knowledge that there was no turning back. There still might be an avenue for states to leave the union, but they cannot do so unilaterally.
Because yes, to a certain extent might makes right. If the opposition can't stop something from happening, its collective opinion has little bearing. If the United States successfully invaded Canada and annexed it, than Canada would be part of the United States. In reality, though, the negative consequences of such an act of aggression would outweigh any benefits from the expanded territory. In the case of succession, however, the federal government decided the horrific consequences of a civil war were still preferable to having the union crumble. If every state could pull out of the union whenever federal law became too inconvenient for it, the federal government would quickly lose all authority as a governing body.
Before the Civil War there was a live question as to whether States could secede, and if secession had come up in some other context, the final result might have been different.
The point is, though, that the Conferderate States adopted as their motto Deo Vindice, i.e. "let God defend the right", the ritual invocation to a trial by combat, indicating their responsibility to abide by the result of the passage at arms. As they lost, they must (by the rules) have been in the wrong.