Personally, I couldn't stand 64DS because of the character-switching mechanics. The whole sense of freedom from the original game has a massive blow dealt to it when you have to leave and go up to another room in the castle and switch into a different character who has the jump that you need. In the original, I could just jump Mario into a painting and survey the world and go, "Okay, where do I want to go this time?" but in 64DS, it's jumping into the painting and saying, "Oh, right, this star needs me to be metal, so I need to go find a Wario hat to switch my Luigi into Wario," or worse yet, "Oh, right, that's the arbitrary block that needs Yoshi, and there is no Yoshi hat, so I have to leave the level, go up to the Secret Slide room, and switch into Yoshi."
No Yoshi hats is a very stupid move with the game in its current form; the game would have been at least a little bit better, however, if it were designed with no actual character-switching -- just the hats. You just play as Yoshi and there's just hats. Particularly if Yoshi only needed to collect hats once, at the points where he rescues the characters from the bosses, and from then on he had the hats permanently in his inventory and could quick-switch between them with a tap on the touch screen (including while in the castle). That alone would have fixed the game a lot.
It's particularly frustrating considering how much of it is just the powers that Mario originally had being divvied up among the characters so you're forced to use them all, rather than new powers that expand on the game.
Still, while the soul is gone, there's still most of the shell of a relatively solid platformer.