Have you realized something…


It's really hard to get an engine that is designed to find the best moves to play accurately at a lower strength, especially some arbitrary rating.
Add to that, players at the same rating level may have different reasons for their rating. Some may be good/bad in openings, middlegames, or endgames. Some may be good/bad at tactics, positional play, or time management.

Bots at lower ratings intentionally blunder or play suboptimal moves to stay within their set rating.