The first part is correct. In order to assign a unique role to the user account based on which day they register for, each datetime for the main conference registration should be its own event. You can optionally add a fourth event that grants access to all 3 days.
With regards to the capabilities, that’s half-correct. You’ll actually be setting a unique Default role for auto-created users for each event. Then each role gets the assigned capability. So it’s basically an indirect capability assignment.