A while ago I made this graphic that summarizes my thoughts on the one program per landing page technique:
I can see this method being useful in some business models, but we choose to tag each program with a unique URL and track the program's performance regardless of which Web form is completed. It looks something like this:
So if I had three different lead gen emails, they would be built as three different programs and the links in each of those emails would have a unique tag to help Marketo identify program responses. Those emails could all point to the same landing page or different landing pages - it wouldn't matter.
If I need to show how those three emails relate to an over-arching campaign, I group them together in Marketo with folder structures and in SalesForce with a field on the campaign object called "Parent Campaign" that would relate them to a common campaign.
This is what works for us, but ultimately it depends on your goals and the reports you need in the end. I hope this was helpful!