I've been working through this in SSIS 2012 and came across a couple of things that might be helpful for anyone behind me:
1. The Variables window no longer shows System variables, by default. There is a checkbox in Variable Grid Options to turn that back on, or you can drill down via Package Explorer to get to them.
2. The ErrorCode in Listing 1 is now 6, not 8:
If iErrorCode = 6 Then
Dts.Variables("Propagate").Value = False
Dts.Variables("Propagate").Value = True
3. An external (file system-based) package should have ReferenceType = External Reference and Location = File system. Project Reference works if the package is already in your solution (i.e. visible in Solution Explorer) as in the example.