We have an eDM which includes a piece of dynamic content in the first paragraph, the content is segmented by the university course the person is studying and has worked as expected during testing and the initial campaign.
We've since added a second piece of dynamic content further down the email which is segmented by the campus the person is studying at.
Since adding the second piece of dynamic content, all the previews (using real people information) are showing default content for both sections, regardless of whether they fall into one or both of the segments (in both the web preview and test emails). The personalisation tokens are still behaving correctly (matching the data used for the segmentations). If we preview the emails by segment (as opposed to person) they show the correct content in the dynamic fields.
Is Marketo limited to using one piece of dynamic content per email?
Nope, it's not, but Marketo's preview capabilities are convoluted.
My best advice for this scenario is to set up a Contact test list. You can use up to 100 leads/contacts in this scenario. Make the list clever by putting dummy data in each one that means they'll fall into your different segments. Clearly mark the list as "Internal Seed List".
When you are previewing your email, choose "View by List" and choose your test list. Then click Send Sample. You will have an option called "Send variations from person list". If that seed list is good enough, you'll see all the different variants sent to you. Note that the tests are sent to YOU, not the people in the test list, so it can be all totally dummy data. The tests will reflect whatever segment/s they are in and display the appropriate dynamic content.
Most of the work here is in setting up test lists with good content that ensures the test leads fall into the right segments.