Hey Todd,
When using the SFDC sync the campaign program status is important. This is the way the user is updated in sfdc. What I did was create triggers for each action I wanted to send to sfdc e.g. Opened, Clicked etc.
The trigger would be set up like this:
smart list: clicks like in email, email is X
flow: update program status to "clicked"
This would then sync to sfdc, no "change status in sfdc" is needed.
Hope that helps,
Bec