Problem Building a Simple Google Maps Plugin

Wierd, just re-read your comment and looks like your shortcode is working when you call it that early – if the map-canvas div is showing up. here’s the code I tested, also added jquery as a dependency for your custom script & changed some css on you div…

function lax_google_map_init() {
    wp_enqueue_script('google-maps', 'http://maps.googleapis.com/maps/api/js?sensor=false');
    wp_enqueue_script('lax_google_map_script', plugins_url('js/lax_google_map_script.js', __FILE__), array('google-maps','jquery'));

    add_shortcode('lax-google-map', 'lax_google_map_maker');
}
add_action('init', 'lax_google_map_init');

function lax_google_map_maker($atts,$content=null) {
    $output .= '<div id="map_canvas" style="width:100%; height:100px; border:1px solid black;"></div>';
    return $output;
}

Looking at that now, it may be a css thing with the height: 100% on your map div not being able to find a defined height on a parent container…