I use
glkfu(1) to get, compile, tweak, and build packages for the latest kernels; I've been using it for a while now and writing it has well beyond paid off. It'll also optimise the kernel (optional) and just make the overall procedure much easier and more automated. If you use it, or in general use the latest kernels, you should know that you'll be the maintainer; that'll be on you. I recommend always keeping an old generic kernel around if things go awry.
Also, GLKFU itself does
not install anything, but it will ask you if you want to add some GPG keys, which is the standard procedure and recommended over at
kernel.org. The keys are to verify you're working on the legitimate files. I intentionally left the installation up to the user's own discretion.
You don't
have to "tweak" the kernel, but if you do some research on how to do all that, you'll reap the benefits.
That said, if that "mainline" thing is like a PPA which gets you generic Ubuntu-configured kernels, without needing to compile, that'll probably be the better solution for you. If you want more control and perhaps to learn some cool stuff, you could try compiling it yourself. Just don't compile a generic kernel, as that takes a
lot longer.
My kernel configuration takes around 10-15 minutes, though.
Another thing to keep in mind if you're looking for bleeding edge kernels, is that you'll be updating a lot! I get kernel updates every few days, and since there are no kernel revisions in the sense of having, for example, Canonical's revisions of the 4.15 line for Ubuntu, you'll need to keep up-to-date.
If you have very old hardware, you may find that support for some of it has been or will be dropped. Conversely, if you're on very new hardware, you'll probably find actual or better support as time goes on. You may experience bugs before they are handled. Updates are so frequent that this shouldn't be too dire of a problem, but it's worth keeping in mind, especially if your machine absolutely must be stable at all times.
Negatives aside, I love using the latest kernels, and I don't think I could go back to generic ones. YMMV.