Three years difference isn't a bad thing when you're older and more mature, but uh, 15 year olds do a lot of stupid things. They're going to do them regardless if their boyfriend is 15 or 18, of course, but the difference is that an 18 year old can take advantage of that naivety (or whatever you want to call it) and that's not right.
Why not. It's just a 3 years difference. What isn't good is 18 girl MARRING a 40 year olds guy.
mar (mär) pronunciation
tr.v., marred, mar·ring, mars.
1. To inflict damage, especially disfiguring damage, on.
2. To impair the soundness, perfection, or integrity of; spoil.
you're right. not a good thing