Well, that's just it, he can't do both. They didn't repeal the earlier laws and they conflict with the new.
I would prefer to see the bill vetoed for all of this crap that Trump is pointing out in the Signing statement. But it would bring congressional appropriations to a standstill. And we can't have that, especially with the military. And there is precedent for using signing statements. At least Congress is on notice that certain provisions won't be followed and why. The onus is on Congress to fix it or let the President proceed as the signing statement indicates.
If the new conflicted with the old - which it doesn't - then the old would automatically be repealed. When legislatures change the law, they seldom if ever pass language explicitly stating that the old law is repealed.
And there is no contradiction between saying the Controlled Substances Act remains the law, and saying no funds have been appropriated for its enforcement against state-legalized medical marijuana matters. Unenforced laws may be silly at best, but it's not generally unconstitutional for Congress to thus be silly.