$query_ProductDetails = "SELECT * FROM Products WHERE ProductID IN (".$_GET['ID'].") ORDER BY ProductPosition ASC";
Using a GET directly inside of a SELECT without verifying its content is a SQL Injection security hole. A hacker could take advantage of that to damage or steal your database data.
However it may not be the problem with the repeat selection that you are seeing since I'm still unable to reproduce it even on the live page.
What do you have highlighted when you apply the repeat selection? What settings are you using? Maybe I'm not doing the exact same thing as you and that is why I can't reproduce it.