There's a 4 card straight and 3 card flush on the board and you check-raise all-in with a set after representing a draw the whole way. This is definitely a losing play.

I'd check-raise on the flop. Why check-call and let a scare card for your opponent fall which cheapens his hand with respect to the board (which is what happened here both on the turn and river), making it harder to get paid off? Plus, he could easily have a hand like A-K of hearts.