With Finch Hill being automatically relegated after finishing seventh in the league, the winner-takes-all match would determine which team played in the top division next summer.
After winning the toss and electing to bat, Castletown got off to the perfect start with openers Ben Leinwand and Ryan Burns building a 64-run partnership for the opening wicket.
Although both fell with the score on 64, Matthew Ogden and Paul Osbourn took the score into three figures before both were trapped by Joel Williams.
Thomas Ackron steadied the innings with a patient 28 before captain Garreth Roome, coming in at number nine, added a vital 24 not out in a final Castletown total of 209 for 9 from their 40 overs.
Cronkbourne’s Jacob Turner was the pick of the away side’s bowlers with three wickets for 25.
Father and son Nick and Josh Maurel began Cronkbourne’s response and, although the latter was out early for nine, Nick added a useful 27 to give Cronkbourne a base to chase the target down.
But when Nick was out, a mini collapse saw a couple more wickets fall in quick succession.
Ryder Spencer added 52 with Jacob Harding before being caught at the wicket by Leinwand off Cameron Roome’s bowling and, when Harding was out with the score on 167, the last two Cronkbourne wickets fell without a run being added to leave them 42 short.
Cronkbourne at least had the consolation of winning the Tinker Cup after Peel and St John’s conceded the final, while PSJ clinched the short form T20 Cain midweek league.
Showing their strength as a club, PSJ’s third team won the Forrester T20 Division One league, while Castletown’s second string took the Division Two honours.
Peel and St Johns’ second team won the mixed over Blinkcoe Cup.
Cronkbourne’s under-13s and u15s both won their respective leagues, hinting at future dominance, while Ramsey were the u11 age group champions.
Peel and St John’s also won the women’s softball league and Crosby triumphed in the Soft Ball Cup.
Crosby’s Ed Walker posted the best bowling figures with 6-13, while Cronkbourne’s Adam McAuley’s unbeaten 139 was the highest score of the season.