Let's try looking at this as a straight pot odds problem.
First the pot odds: 20 in pf, +15, +60, +120, +120, +320 = 635
it costs you 305 to call = 2.1:1 on your call
I think we can analyze implied odds right on the flop too, because I think if you're continuing with this hand, you're going to be getting the money in on the flop. You have everyone covered, so assuming villains 2 + 3 call, there's an extra 360 + 380 = 740 in the pot, or 380 more if villain 2 folds.
So two scenarios after you push:
villain 2 calls, villain 3 calls = 1375 in pot, 4.5:1 implied odds
villain 2 folds, villain 3 calls = 1105 in pot, 3.6:1 implied odds
Now the drawing odds. This part is much easier I think. Either we're ahead with our flush and need to dodge any diamond or possibly the board pairing, or we're up against a higher flush and need some miracle perfect perfect straight flush. If we're ahead, we're the favourite and getting odds besides, and if we're behind, we clearly don't have the odds to draw.
So, based on the pot odds we can push and be wrong (up against a higher flush) about 3 times in 4 (given some mix of villain 2 calling and folding. I'm just averaging 4.5 and 3.6 to about 4, so gotta be right 1 time in 4) and still show some profit on the hand. Are you 80% sure you're up against a higher flush?
Of course you know villain 3 the best, but I think Zach's right that there aren't many flushes you beat here, and it seems doubtful he'd be betting a set at this point. I'd say I'm 75% sure I'm beat, just to make things fun
P.S. I might have gotten the math really wrong here, I haven't done a whole lot of this kind of analysis.
Life is -EV.
_________________________
Stars, Party, FCP: zerochill