Olivia - Stumbled across your post while searching for something else, figured I'd put in my two cents even though you found a solution.
There are two different ways I might handle this, neither involving a list.
Option A: If it is a simple email program, have triggers active that will change people's statuses within the program to "Opened". Then, when you go to create your re-send campaign, just use a filter of "Member of Program", set it to your program, and add a constraint of Program Status is not Opened.
Option B: Inactivity filters. When building your smart list within your campaign, at the very bottom of the filtering options down the right-hand side is a folder for inactivity filters. Expand out the "Email" folder under the inactivity section, and insert a filter of "Not Opened Email". Then, just choose the email you're using the campaign (make sure to keep the dropdown as "is").
Hope these might help a bit in the future... I tend to try to do things without creating a ton of lists across our instance of Marketo.
Marcus