In wp 2.0.x, I was having a similar issue also. To get the raw url for the previous post, I used something like the following (in index.php):
<?php global $wp_query; $wp_query->is_single = true; ?>
<a href="<?php echo get_permalink(get_previous_post()); ?>">PREVIOUS POST</a>
<?php endwhile; ?>
I think what this does is ‘trick’ the index page into thinking that its a single post.
There are too many damn variations of previous* and next* in the wp codebase. The docs need some serious cleaning up.