This is largely a display issue. No duplicate rewards are added, no challenges (as far as I can tell) are removed and everything functions normally.

Example:
Original challenge was to "Win with a Utility Hero With Bad Teeth". Tidehunter was used in this case. After completing this challenge, the challenge that appeared after it was "Win with a Pot-Bellied Utility Hero", which will be completed from the same match. The game will show that both challenges were complete and that the player has recieved the rewards for both, when in reality, only the rewards for the first challenge will be applied and the second challenge will remain incomplete. Here is an image which accurately portrays what happens.



Note how two challenges are complete, most notably that the second one complete rewards 2,000 battle points.



2,000 battle points have not been recieved



Second challenge remains in its original position, incomplete. First challenge which was originally available was complete and rewards from that challenge were successfully applied (as visible by the single owned nether wand in the top right hand corner.