First of all this is a gift for girls not boys (sorry!). It's something that I've done before for my best friend's birthday. I made her a picture! It really isn't that hard of a thing to make.
First let your kid have fun with old canvases, because I would really let your kid make the whole thing. It's very easy and it might not look as nice as if you did it, but really it has more love in it (not that adults don't have any love in them, it's just that if the gift is from your kids, it would 1. make more sense if they made it and 2. it would have more meaning to it than just having your kid come over every ten minutes saying "Great job mom keep up the good work!" and then going and playing video games).
Alright you don't need a new canvas. Just find an old one and paint over it. Paint what ever color you want or just keep it the same! This was an old princess canvas that I'm too old for now so I just painted over it.
Then pick that person's favorite color and then make the first letter of their name on the front in big letters! Then you do their next favorite color in the back round with polka dots. I would say to use glittery paint so that the polka dots don't make you look at that instead of the letter.
Next in the corner of the letter, kind of put something that means them. Like with my friend, she is a girly girl so I made a 3-D bow. Then all you have to do is glue the bow on and you have yourself a picture for whoever you want to give it to!
My friend loved it and I hope you do to!
Extra thing's you might need to know!
1. Make sure all the paint is dry before you put a different color or pattern on top of it
2. To make the bow all you have to do is one long strip you fold in half and a shorter strip that you put in the middle of the long strip then you glue it together to make it puffier.
I hope you enjoy your picture and " Thank you, thank you very much!"