You aren't doing anything wrong -- this is expected behavior.
Munki allows users to have a newer/later version of software without penalty. It does use a Spotlight (and LaunchServices) search to find all installed applications.
When you ask it to install Unity 3.4, it sees a later version is already installed and that satisfies its check, so it has nothing to do.
To work around this, instead of using the applications themselves for the installs array, you could use the directory or the execuables:
makepkginfo -f /Applications/Unity-3.4.2
makepkginfo -f /Applications/Unity-3.5.0
This way Munki will only check for the existence of the appropriate directory and not search for applications.
-Greg