Was it luck that he had the best cards or did he cheat somehow?
Although I am not a poker player, 'much of the popularity of poker is due to the wonderful combination of luck and skill. If it were solely a game of skill, the inexperienced wouldn’t play because they would lose every time. If it were too much about luck, the professional players would give up. With the current balance of luck and skill in poker, on any given day anyone can win a tournament, but over time the skilful players will come out on top.' (DurrrrChallenge.com's comments on 'Real Money Texas Holdem')
BondMovies.com goes through the game scene by scene here, explaining how Bond ultimately won the game despite Le Chiffre's faked bluff, however improbable.
And if you wish to know exactly how improbable Bond's victory was, casino-games-online.biz explains his odds of winning at the beginning and during the course of play, here.
So, as there is absolutely nothing within the plot of Casino Royale to suggest that Bond even considered cheating, from either the films content or any subsequent analysis I have read (that was Le Chiffre's speciality; like, with the poison and all that) I would say that it is fair to insinuate that he won using a combination of skill and luck.
James Bond has lots of skills, training, and education: languages, martial arts, marksmanship, spy tradecraft, etc.
However, what is the first lucky number most people think of?: 7
Bond has been shot at thousands of times and never struck. He is incredibly lucky.
I don't think cheating was his main option at that moment. I'd say it was just pure luck because as you know: "Hereos always win."