Displaying a specific post in a wp query by post id

post_id is not a valid argument for query_post Change post_id to p,
so you get:

query_posts('p=40&post_type=homepage_video');
while (have_posts()): the_post(); ?>
    <div id="video-panel-blue">
    <?php get_custom_field('home-video-iframe', TRUE); ?>
    </div>
<?php endwhile; ?>

to see the list of arguments you can use with query_posts take a look at this codex entry