There is definitely something wrong with how the vulture and the knightrider is evaluated. Check this game where the diagram's AI does silly exchanges:
I think this is simply classical horizon effect. The issue is that Ra2 is hanging (6... Vxa2). It is poisoned, though: after 7. Nb5 the Varan is trapped, and can at best be traded for a Cannon. If the program tries to capture the Rook early, it will see that it loses the Varan. But if it does not capture immediately, white can very easily 'rescue' the Rook, e.g. by playing 7. b5. So it tries to keep white busy, by forcing him to recapture for a number of moves (or lose a Kangaroo when he does not recapture, which is nearly as bad as losing a Rook) so he doesn't get the time to do something about the Rook 'threat'. Then, just before the search depth is exhausted, it captures the Rook. Because the refutation to that, Nb5, is a quiet move, it is not considered in quiescence search, and black thinks he has gained a Rook. Which is worth more than what he lost in the Nightrider-for-Kangaroo trades. So black thinks that sacrificing the Nightriders in the end will get him ahead, not realizing that this advantage will only last for one move.
Horizon effect has been plaguing computer chess from the beginning, and as far as I know was never really solved. Modern chess engines like Stockfish get around it by searching so deep (like 20-25 ply) that it is just not possible to delay trouble so much through sacrificing in a simple game like orthodox chess that it can be pushed over the horizon. But the Interactive Diagram does not search as fast as Stockfish, and Apothecary Chess is not as simple as orthodox Chess. I guess this is a case where "works as designed" is not the same as "works as desired"...
I have some unproven ideas for how to solve this. For those interested in the details of tree search: When a move that looked good at a certain search depth suddenly looks very bad after searching a ply deeper, trying the same move two ply later when searching for alternatives is very risky. Because the two ply that went before it have eaten away so much of the search depth that the remaining depth is insufficient for finding the refutation, while you do know there existed a refutation when you had not preceded it with those two ply. The move can only be good if thosce preceding two ply actually did something to solve the covert threat that apparently existed. But statistically this is very unlikely, especially in large variants.
So in a case where the move that was best in an N-ply search, but is dramatically bad in the (N+1)-ply search, it might be better to forbid that move to be played as 3rd move during the (N+1)-ply search and the (N+2)-ply search. Because the remaining depth for the 3rd ply would be only N-1 and N ply, which was not sufficient for recognizing that it was bad. But this will err in the other direction (but hopefully less frequently...): in some cases the moves played in the first 2 ply would interfere with the refutation, and by taking the pessimistic attitude that it won't, you won't be able to find such moves. But what can you do when you know you don't have enough depth to see a solution to a problem, and don't have the time to afford more depth?
Perhaps a more conservative approach would be to forbid playing a 'failing move' 2 ply later only in cases where these 2 ply sacrificed something. Like a Nightrider for a Kangaroo. If you could not safely capture the Rook before that, it is a reasonably safe bet you also cannot safely do it afterwards, and just assume that without actually trying. If you really want to be clever you could also remember the refutation to VxR (Nb5), and would allow VxR in the 3rd ply if the 1st or 2nd ply interfered with the refutation. (E.g. by capturing that Knight, or if white already moved the Knight away in the 2nd ply himself.)
I think this is simply classical horizon effect. The issue is that Ra2 is hanging (6... Vxa2). It is poisoned, though: after 7. Nb5 the Varan is trapped, and can at best be traded for a Cannon. If the program tries to capture the Rook early, it will see that it loses the Varan. But if it does not capture immediately, white can very easily 'rescue' the Rook, e.g. by playing 7. b5. So it tries to keep white busy, by forcing him to recapture for a number of moves (or lose a Kangaroo when he does not recapture, which is nearly as bad as losing a Rook) so he doesn't get the time to do something about the Rook 'threat'. Then, just before the search depth is exhausted, it captures the Rook. Because the refutation to that, Nb5, is a quiet move, it is not considered in quiescence search, and black thinks he has gained a Rook. Which is worth more than what he lost in the Nightrider-for-Kangaroo trades. So black thinks that sacrificing the Nightriders in the end will get him ahead, not realizing that this advantage will only last for one move.
Horizon effect has been plaguing computer chess from the beginning, and as far as I know was never really solved. Modern chess engines like Stockfish get around it by searching so deep (like 20-25 ply) that it is just not possible to delay trouble so much through sacrificing in a simple game like orthodox chess that it can be pushed over the horizon. But the Interactive Diagram does not search as fast as Stockfish, and Apothecary Chess is not as simple as orthodox Chess. I guess this is a case where "works as designed" is not the same as "works as desired"...
I have some unproven ideas for how to solve this. For those interested in the details of tree search: When a move that looked good at a certain search depth suddenly looks very bad after searching a ply deeper, trying the same move two ply later when searching for alternatives is very risky. Because the two ply that went before it have eaten away so much of the search depth that the remaining depth is insufficient for finding the refutation, while you do know there existed a refutation when you had not preceded it with those two ply. The move can only be good if thosce preceding two ply actually did something to solve the covert threat that apparently existed. But statistically this is very unlikely, especially in large variants.
So in a case where the move that was best in an N-ply search, but is dramatically bad in the (N+1)-ply search, it might be better to forbid that move to be played as 3rd move during the (N+1)-ply search and the (N+2)-ply search. Because the remaining depth for the 3rd ply would be only N-1 and N ply, which was not sufficient for recognizing that it was bad. But this will err in the other direction (but hopefully less frequently...): in some cases the moves played in the first 2 ply would interfere with the refutation, and by taking the pessimistic attitude that it won't, you won't be able to find such moves. But what can you do when you know you don't have enough depth to see a solution to a problem, and don't have the time to afford more depth?
Perhaps a more conservative approach would be to forbid playing a 'failing move' 2 ply later only in cases where these 2 ply sacrificed something. Like a Nightrider for a Kangaroo. If you could not safely capture the Rook before that, it is a reasonably safe bet you also cannot safely do it afterwards, and just assume that without actually trying. If you really want to be clever you could also remember the refutation to VxR (Nb5), and would allow VxR in the 3rd ply if the 1st or 2nd ply interfered with the refutation. (E.g. by capturing that Knight, or if white already moved the Knight away in the 2nd ply himself.)