If the 7.5 hours a day is the same as worked each day by a full-timer working five days a week and you work three days, you’re entitled to three-fifths of a full-timer’s annual leave.
The figure of 148.5 hours equates to 6.6 of your weeks and the statutory minimum (for most folk) is 5.6 weeks. That minimum might or might not include Bank Holidays.
Your contract shows Bank Holidays are added and if you’re in England, there will be nine Bank Holidays in your 2022/23 period.
Therefore you’re entitled to three-fifths of those nine days which is 5.4 of your days or 40.5 hours.
So then, assuming the 148.5 hours (6.6 weeks) is correct and knowing the 40.5 is, the total should be 189 which is the figure in the contract.
Their final calculation suggests you have three fewer days annual leave when excluding Bank Holidays so you will need to contact your Line Manager or HR section to resolve it.