Citizen can prove who he has voted for
If the voting private key is in a smartcard then he cannot extract it. But he can sign another thing to prove he has the key. It allows vote selling. The smartcard could destroy the private key after its first use, but I don't think it is a good pratice. We probably should not enforce the device used to vote.
So vote selling stay possible