In the other match of the day, Ireland picked up its first win of the campaign, beating the United Arab Emirates by 138 points. Paul Stirling showed terrific form, scoring 162 points.
Sri Lankan bowlers take the lead to complete the group stage
For the first time in the tournament, Dimuth Karunaratne failed to make a half-century and others took the field instead.
Opening partner Patum Nissanka did just that, making 75 pucks at the Queens Athletic Club field in Bulawayo, which provided plenty of help to the spinners.Although 246 looked like an achievable goal for the Scots, they never really threatened and were eventually knocked out with a score of 163 in reply.
Chris Soule (2/46) struck first for Scotland, but Nissanka made a great strike before becoming the first of three victims for Mark Watt (3/52).
The left-hander also removed Charit Asalanca (63), who kept the scoreboard rolling, first with Nissanka and then after he left at 142-4.
Asalanka and Dhananjaya de Silva added 61 for the fifth wicket and brought Sri Lanka to 203-4 before losing three wickets, allowing just four.
After that, Sri Lanka had to fight for a decent result. Vanindu Hasaranga (15) and Thakshana (16 not out) contributed to the 245-run total.
With the spinners active, it was always going to be a tough total for Scotland, which proved to be the case, with Lahiru Kumara scoring Matthew Cross in the second over before the slow bowlers took over.
Thakshana confounded Brandon McMullen (5) and skipper Richie Burrington (10), and Kasun Rajitha reminded what the quicks can do, pinning Thomas McIntosh at leg-side for three strikes.
Hasaranga stopped Christopher McBride’s resistance in the 29th minute, and then Shanaka caught Michael Liska for five, and Scotland was stranded at 74-6.
Greaves and Soul (17) added 55 points in the ninth wicket, but two shutouts ended their struggles with the last ball of the 29th round.