I’m with @janbb on this one. Don’t do anything public, and don’t go in with the idea of making a proposal that “he can’t turn down.” You need to be able to give the guy an easy, non-embarrassing (for either one of you) way to say no.
If this guy is interested in going with you, he’ll say so when you ask him, privately. Just ask him in simple terms like this, “Hey Justin, I’m planning on going to the homecoming dance and I was wondering if you’d like to go with me.”
He’ll either say yes, in which case you’re good to go, or he’ll say no (and probably give a real, or not real, but polite answer as to why he can’t go).
Don’t demand to know why he can’t go, even if you don’t believe him. Don’t ask him why he doesn’t like you (maybe he does, maybe he doesn’t, but it’s no reflection on you) If he gives you a reason for why he can’t go, it’s either because he actually can’t go (for whatever reason), or he’s trying to beg off without hurting your feelings.
Just don’t put him on the spot. That’s not fun for anyone.
Also, don’t stress yourself out worrying about a dramatic way to ask him. Drama tends to backfire. If you just ask him, like a regular friendly person, whether he says yes or no, you won’t have to feel awkward about it. If he says yes, then you can go and see where it takes you, if he says no, you’re still friends. If you bring drama into the picture and he says no, you’ll probably regret it, and you might embarrass him.