Hey Marcin,
how can I ensure that a customer who needs 3 copies doesn't just propagate the one license across 3 computers?
I'm not sure I understand the question. An "activation" is tied to the computer (they can't copy the activation data to another computer -- well, they can, but it's worthless on another computer).
So if you create a product key with 3 allowed activations this means the user can use the product key on 3 computers. If you want them to be tied to a single computer then set the allowed activations to 1. If you want the give the user the ability to move between computers but only allowed to use your app on 1 computer at a time, then add a "Deactivate" menu to your app. This way the customer can deactivate from one computer and activate on another computer all while only using the 1 "allowed activation".
Does that make sense?