When my son was eighteen, his advocate helped him fill out the paper work for SSI. He has a long history of mental illness. He was denied and appealed; ultimately he was denied again. He tried working, he really tried hard. He worked at several different jobs over a period of five years. He'd start out fine, but the stress and demands of the jobs always resulted in him collapsing emotionally. At that point, I helped him apply again and he was approved for benefits. It took about six months from submission of the paper work to approval. I think that the fact that he had a work history and could show that he genuinely tried to function in a work setting helped his case. He also had the back up support of his therapist and psychiatrist to show the effects work stress had on his mental health. He was also accepted into a supported living arrangement for individuals with mental health problems. I think that weighed heavily in his favor too. Good luck to your son and I hope he has some relief from the migraines!
PS The good news is that my son remained on benefits for eight years and then seemed to really pull his life together. He got off benefits last year and works full time, handling the stress well. I think he's pretty proud of himself

. . . and I have to say that I'm pretty darn proud of him too!