As stated, both are correct.
I use "billete de lotería" or simply "lotería". But I'm from Spain.
Saying that your son it's correct because you're in TExas it's not fair.
Then what it's "proper" spanish here? Mexican? Argetinian, Castillian?
Both are correct. Both are acepted usages. There is no righter way if you're in the USA. It will be more common, but no righter.
About the "de", sometimes we skip it, but usually it must be written.
greetings