It is like this by design for the following reason:
1) Let’s say the customer has 5 products in cart of $100 each. The discount is $100. Cart total is $400
2) Now the customer adds 1 product worth $20. If we use your method and discount the cheapest item, the cart total would become $500.
This means adding a cheap ($20) 6th item increases the cart total with the price of a more expensive product ($100). I.e. the customer would get a worse deal if adding the 6th item. In other words: the customer is penalized for adding more products to the cart.