Is the code wrong?
No idea, the code you posted seems to be ok, but I don't know what else you are doing. I just rechecked with Win 7, Laz 1.5, fpc 2.6.4, and the multiselection is doing fine -- see attached demo: Run, click any cell to create the first selection as shown in the memo at the bottom, CTRL-click at another cell to create the second selection etc. SHIFT-click extends the current selection. The selection boundaries are displayed in the memo at the bottom.
What is your operating system?