The business case for explicitly setting these memory options in startup scripts is probably very similar for both Karaf and Tomcat, so perhaps the latter's much longer experience might be instructive. From what I can see Tomcat doesn't explicitly set these options, instead the user optionally declares an OS environment variable like so:
export CATALINA_OPTS="-Xms128m -Xmx1024m -XX:MaxPermSize=256m"
and Tomcat automatically reads those in on startup. (Perhaps most users don't bother making settings such as these until they have a perm gen or other memory error, and then they configure it.) What's also nice with Tomcat is that the memory settings aren't at the JVM-level but just the Tomcat-level instead, i.e., you can start other Java programs and the above settings would be ignored.
I don't have a strong position on this either way, but should we go with Alexey's preference of not explicitly making these settings it probably wouldn't be that horrifying to the user community, as Tomcat's heavy user base has been accustomed to this for years.