I think I get It.
The problem is that the voting is ended due to EndDate < CurrDate(), but the switch is exhibiting an active status due to the IsActive property, which is still True.
Am I right?
In order to overcome this issue, you could use a workaround.
1 - Enclose the switch widget inside an If.
2 - Set the If condition to
GetRounds.List.Current.VotingRound.EndDate >= CurrDate()
3 - In True, let the original switch as it is now.
4 - In False, put another switch with a local variable set to False and the Enabled property also set to False.
Hope It could help
Regards